diff --git a/[core]/es_extended/client/common.lua b/[core]/es_extended/client/common.lua index e18f2884b..26020ace2 100644 --- a/[core]/es_extended/client/common.lua +++ b/[core]/es_extended/client/common.lua @@ -5,8 +5,3 @@ end) if GetResourceState('ox_inventory') ~= 'missing' then Config.OxInventory = true end - -AddEventHandler("esx:getSharedObject", function() - local Invoke = GetInvokingResource() - print(("[^1ERROR^7] Resource ^5%s^7 Used the ^5getSharedObject^7 Event, this event ^1no longer exists!^7 Visit https://documentation.esx-framework.org/tutorials/tutorials-esx/sharedevent for how to fix!"):format(Invoke)) -end) diff --git a/[core]/es_extended/client/functions.lua b/[core]/es_extended/client/functions.lua index 63955e737..c65c8c5f4 100644 --- a/[core]/es_extended/client/functions.lua +++ b/[core]/es_extended/client/functions.lua @@ -70,17 +70,18 @@ function ESX.Progressbar(message, length, Options) print("[^1ERROR^7] ^5ESX Progressbar^7 is Missing!") end -function ESX.ShowNotification(message, notifyType, length) +function ESX.ShowNotification(message, type, length) if GetResourceState("esx_notify") ~= "missing" then - return exports["esx_notify"]:Notify(notifyType, length, message) + message = message:gsub("~(.-)~", "") + return exports['okokNotify']:Alert('System', message, 10000, 'info') end print("[^1ERROR^7] ^5ESX Notify^7 is Missing!") end -function ESX.TextUI(message, notifyType) +function ESX.TextUI(message, type) if GetResourceState("esx_textui") ~= "missing" then - return exports["esx_textui"]:TextUI(message, notifyType) + return exports['okokTextUI']:Open(message, 'darkgrey', 'right') end print("[^1ERROR^7] ^5ESX TextUI^7 is Missing!") @@ -88,7 +89,7 @@ end function ESX.HideUI() if GetResourceState("esx_textui") ~= "missing" then - return exports["esx_textui"]:HideUI() + return exports['okokTextUI']:Close() end print("[^1ERROR^7] ^5ESX TextUI^7 is Missing!") @@ -140,24 +141,41 @@ ESX.HashString = function(str) return input_map end -local contextAvailable = GetResourceState("esx_context") ~= "missing" +if GetResourceState("esx_context") ~= "missing" then + function ESX.OpenContext(...) + exports["esx_context"]:Open(...) + end -function ESX.OpenContext(...) - return contextAvailable and exports["esx_context"]:Open(...) or not contextAvailable and print("[^1ERROR^7] Tried to ^5open^7 context menu, but ^5esx_context^7 is missing!") -end + function ESX.PreviewContext(...) + exports["esx_context"]:Preview(...) + end -function ESX.PreviewContext(...) - return contextAvailable and exports["esx_context"]:Preview(...) or not contextAvailable and print("[^1ERROR^7] Tried to ^5preview^7 context menu, but ^5esx_context^7 is missing!") -end + function ESX.CloseContext(...) + exports["esx_context"]:Close(...) + end -function ESX.CloseContext(...) - return contextAvailable and exports["esx_context"]:Close(...) or not contextAvailable and print("[^1ERROR^7] Tried to ^5close^7 context menu, but ^5esx_context^7 is missing!") -end + function ESX.RefreshContext(...) + exports["esx_context"]:Refresh(...) + end +else + function ESX.OpenContext() + print("[^1ERROR^7] Tried to ^5open^7 context menu, but ^5esx_context^7 is missing!") + end + + function ESX.PreviewContext() + print("[^1ERROR^7] Tried to ^5preview^7 context menu, but ^5esx_context^7 is missing!") + end + + function ESX.CloseContext() + print("[^1ERROR^7] Tried to ^5close^7 context menu, but ^5esx_context^7 is missing!") + end -function ESX.RefreshContext(...) - return contextAvailable and exports["esx_context"]:Refresh(...) or not contextAvailable and print("[^1ERROR^7] Tried to ^5Refresh^7 context menu, but ^5esx_context^7 is missing!") + function ESX.RefreshContext() + print("[^1ERROR^7] Tried to ^5Refresh^7 context menu, but ^5esx_context^7 is missing!") + end end + ESX.RegisterInput = function(command_name, label, input_group, key, on_press, on_release) RegisterCommand(on_release ~= nil and "+" .. command_name or command_name, on_press) Core.Input[command_name] = on_release ~= nil and ESX.HashString("+" .. command_name) or ESX.HashString(command_name) @@ -167,19 +185,18 @@ ESX.RegisterInput = function(command_name, label, input_group, key, on_press, on RegisterKeyMapping(on_release ~= nil and "+" .. command_name or command_name, label, input_group, key) end -function ESX.UI.Menu.RegisterType(menuType, open, close) - ESX.UI.Menu.RegisteredTypes[menuType] = { +function ESX.UI.Menu.RegisterType(type, open, close) + ESX.UI.Menu.RegisteredTypes[type] = { open = open, close = close } end -function ESX.UI.Menu.Open(menuType, namespace, name, data, submit, cancel, change, close) +function ESX.UI.Menu.Open(type, namespace, name, data, submit, cancel, change, close) local menu = {} - menu.type = menuType + menu.type = type menu.namespace = namespace - menu.resourceName = (GetInvokingResource() or "Unknown") menu.name = name menu.data = data menu.submit = submit @@ -187,11 +204,11 @@ function ESX.UI.Menu.Open(menuType, namespace, name, data, submit, cancel, chang menu.change = change menu.close = function() - ESX.UI.Menu.RegisteredTypes[menuType].close(namespace, name) + ESX.UI.Menu.RegisteredTypes[type].close(namespace, name) for i = 1, #ESX.UI.Menu.Opened, 1 do if ESX.UI.Menu.Opened[i] then - if ESX.UI.Menu.Opened[i].type == menuType and ESX.UI.Menu.Opened[i].namespace == namespace and + if ESX.UI.Menu.Opened[i].type == type and ESX.UI.Menu.Opened[i].namespace == namespace and ESX.UI.Menu.Opened[i].name == name then ESX.UI.Menu.Opened[i] = nil end @@ -222,7 +239,7 @@ function ESX.UI.Menu.Open(menuType, namespace, name, data, submit, cancel, chang end menu.refresh = function() - ESX.UI.Menu.RegisteredTypes[menuType].open(namespace, name, menu.data) + ESX.UI.Menu.RegisteredTypes[type].open(namespace, name, menu.data) end menu.setElement = function(i, key, val) @@ -251,15 +268,15 @@ function ESX.UI.Menu.Open(menuType, namespace, name, data, submit, cancel, chang end ESX.UI.Menu.Opened[#ESX.UI.Menu.Opened + 1] = menu - ESX.UI.Menu.RegisteredTypes[menuType].open(namespace, name, data) + ESX.UI.Menu.RegisteredTypes[type].open(namespace, name, data) return menu end -function ESX.UI.Menu.Close(menuType, namespace, name) +function ESX.UI.Menu.Close(type, namespace, name) for i = 1, #ESX.UI.Menu.Opened, 1 do if ESX.UI.Menu.Opened[i] then - if ESX.UI.Menu.Opened[i].type == menuType and ESX.UI.Menu.Opened[i].namespace == namespace and + if ESX.UI.Menu.Opened[i].type == type and ESX.UI.Menu.Opened[i].namespace == namespace and ESX.UI.Menu.Opened[i].name == name then ESX.UI.Menu.Opened[i].close() ESX.UI.Menu.Opened[i] = nil @@ -277,10 +294,10 @@ function ESX.UI.Menu.CloseAll() end end -function ESX.UI.Menu.GetOpened(menuType, namespace, name) +function ESX.UI.Menu.GetOpened(type, namespace, name) for i = 1, #ESX.UI.Menu.Opened, 1 do if ESX.UI.Menu.Opened[i] then - if ESX.UI.Menu.Opened[i].type == menuType and ESX.UI.Menu.Opened[i].namespace == namespace and + if ESX.UI.Menu.Opened[i].type == type and ESX.UI.Menu.Opened[i].namespace == namespace and ESX.UI.Menu.Opened[i].name == name then return ESX.UI.Menu.Opened[i] end @@ -292,8 +309,8 @@ function ESX.UI.Menu.GetOpenedMenus() return ESX.UI.Menu.Opened end -function ESX.UI.Menu.IsOpen(menuType, namespace, name) - return ESX.UI.Menu.GetOpened(menuType, namespace, name) ~= nil +function ESX.UI.Menu.IsOpen(type, namespace, name) + return ESX.UI.Menu.GetOpened(type, namespace, name) ~= nil end function ESX.UI.ShowInventoryItemNotification(add, item, count) @@ -604,13 +621,23 @@ function ESX.Game.GetVehicleProperties(vehicle) end end +--[[ local modLivery = GetVehicleMod(vehicle, 48) + if GetVehicleMod(vehicle, 48) == -1 and GetVehicleLivery(vehicle) ~= 0 then + modLivery = GetVehicleLivery(vehicle) + end ]] + + local driftTyresEnabled = false + if type(GetDriftTyresEnabled(vehicle) == "boolean") and GetDriftTyresEnabled(vehicle) then + driftTyresEnabled = true + end + local doorsBroken, windowsBroken, tyreBurst = {}, {}, {} local numWheels = tostring(GetVehicleNumberOfWheels(vehicle)) - local TyresIndex = { -- Wheel index list according to the number of vehicle wheels. - ['2'] = { 0, 4 }, -- Bike and cycle. - ['3'] = { 0, 1, 4, 5 }, -- Vehicle with 3 wheels (get for wheels because some 3 wheels vehicles have 2 wheels on front and one rear or the reverse). - ['4'] = { 0, 1, 4, 5 }, -- Vehicle with 4 wheels. + local TyresIndex = { -- Wheel index list according to the number of vehicle wheels. + ['2'] = { 0, 4 }, -- Bike and cycle. + ['3'] = { 0, 1, 4, 5 }, -- Vehicle with 3 wheels (get for wheels because some 3 wheels vehicles have 2 wheels on front and one rear or the reverse). + ['4'] = { 0, 1, 4, 5 }, -- Vehicle with 4 wheels. ['6'] = { 0, 1, 2, 3, 4, 5 } -- Vehicle with 6 wheels. } @@ -632,6 +659,12 @@ function ESX.Game.GetVehicleProperties(vehicle) end end + local vState = Entity(vehicle).state + local flameThrower = false + if vState and vState.flameThrower then + flameThrower = vState.flameThrower + end + return { model = GetEntityModel(vehicle), doorsBroken = doorsBroken, @@ -668,6 +701,7 @@ function ESX.Game.GetVehicleProperties(vehicle) neonColor = table.pack(GetVehicleNeonLightsColour(vehicle)), extras = extras, + driftTyresEnabled = driftTyresEnabled, tyreSmokeColor = table.pack(GetVehicleTyreSmokeColor(vehicle)), modSpoilers = GetVehicleMod(vehicle, 0), @@ -722,7 +756,8 @@ function ESX.Game.GetVehicleProperties(vehicle) modTank = GetVehicleMod(vehicle, 45), modWindows = GetVehicleMod(vehicle, 46), modLivery = GetVehicleMod(vehicle, 48) == -1 and GetVehicleLivery(vehicle) or GetVehicleMod(vehicle, 48), - modLightbar = GetVehicleMod(vehicle, 49) + modLightbar = GetVehicleMod(vehicle, 49), + flameThrower = flameThrower, } end @@ -808,6 +843,10 @@ function ESX.Game.SetVehicleProperties(vehicle, props) end end + if props.driftTyresEnabled then + SetDriftTyresEnabled(vehicle, true) + end + if props.neonColor ~= nil then SetVehicleNeonLightsColour(vehicle, props.neonColor[1], props.neonColor[2], props.neonColor[3]) end @@ -964,6 +1003,10 @@ function ESX.Game.SetVehicleProperties(vehicle, props) SetVehicleLivery(vehicle, props.modLivery) end + if props.flameThrower then + TriggerServerEvent('flametune:force', VehToNet(vehicle), props.flameThrower) + end + if props.windowsBroken ~= nil then for k, v in pairs(props.windowsBroken) do if v then @@ -1006,7 +1049,7 @@ function ESX.Game.Utils.DrawText3D(coords, text, size, font) local fov = (1 / GetGameplayCamFov()) * 100 scale = scale * fov - SetTextScale(0.0, 0.55 * scale) + SetTextScale(0.0 * scale, 0.55 * scale) SetTextFont(font) SetTextProportional(1) SetTextColour(255, 255, 255, 215) @@ -1036,7 +1079,7 @@ function ESX.ShowInventory() local playerPed = ESX.PlayerData.ped local elements = { - { unselectable = true, icon = 'fas fa-box' } + { unselectable = true, icon = 'fas fa-box', title = 'Player Inventory' } } local currentWeight = 0 @@ -1075,10 +1118,7 @@ function ESX.ShowInventory() end end - elements[1].title = TranslateCap('inventory', currentWeight, Config.MaxWeight) - - for i = 1, #Config.Weapons do - local v = Config.Weapons[i] + for _, v in ipairs(Config.Weapons) do local weaponHash = joaat(v.name) if HasPedGotWeapon(playerPed, weaponHash, false) then @@ -1099,6 +1139,12 @@ function ESX.ShowInventory() end end + elements[#elements + 1] = { + unselectable = true, + icon = "fas fa-weight", + title = "Current Weight: " .. currentWeight + } + ESX.CloseContext() ESX.OpenContext("right", elements, function(_, element) @@ -1153,7 +1199,7 @@ function ESX.ShowInventory() } ESX.OpenContext("right", elements2, function(_, element2) - local item, itemType = element2.value, element2.type + local item, type = element2.value, element2.type if element2.action == "give" then local playersNearby = ESX.Game.GetPlayersInArea(GetEntityCoords(playerPed), 3.0) @@ -1186,8 +1232,8 @@ function ESX.ShowInventory() local selectedPlayerPed = GetPlayerPed(selectedPlayer) if IsPedOnFoot(selectedPlayerPed) and not IsPedFalling(selectedPlayerPed) then - if itemType == 'item_weapon' then - TriggerServerEvent('esx:giveInventoryItem', selectedPlayerId, itemType, item, nil) + if type == 'item_weapon' then + TriggerServerEvent('esx:giveInventoryItem', selectedPlayerId, type, item, nil) ESX.CloseContext() else local elementsG = { @@ -1200,7 +1246,7 @@ function ESX.ShowInventory() local quantity = tonumber(menuG.eles[2].inputValue) if quantity and quantity > 0 and element.count >= quantity then - TriggerServerEvent('esx:giveInventoryItem', selectedPlayerId, itemType, item, quantity) + TriggerServerEvent('esx:giveInventoryItem', selectedPlayerId, type, item, quantity) ESX.CloseContext() else ESX.ShowNotification(TranslateCap('amount_invalid')) @@ -1222,12 +1268,12 @@ function ESX.ShowInventory() local dict, anim = 'weapons@first_person@aim_rng@generic@projectile@sticky_bomb@', 'plant_floor' ESX.Streaming.RequestAnimDict(dict) - if itemType == 'item_weapon' then + if type == 'item_weapon' then ESX.CloseContext() TaskPlayAnim(playerPed, dict, anim, 8.0, 1.0, 1000, 16, 0.0, false, false, false) RemoveAnimDict(dict) Wait(1000) - TriggerServerEvent('esx:removeInventoryItem', itemType, item) + TriggerServerEvent('esx:removeInventoryItem', type, item) else local elementsR = { { unselectable = true, icon = "fas fa-trash", title = element.title }, @@ -1243,7 +1289,7 @@ function ESX.ShowInventory() TaskPlayAnim(playerPed, dict, anim, 8.0, 1.0, 1000, 16, 0.0, false, false, false) RemoveAnimDict(dict) Wait(1000) - TriggerServerEvent('esx:removeInventoryItem', itemType, item, quantity) + TriggerServerEvent('esx:removeInventoryItem', type, item, quantity) else ESX.ShowNotification(TranslateCap('amount_invalid')) end @@ -1299,8 +1345,8 @@ function ESX.ShowInventory() end RegisterNetEvent('esx:showNotification') -AddEventHandler('esx:showNotification', function(msg, notifyType, length) - ESX.ShowNotification(msg, notifyType, length) +AddEventHandler('esx:showNotification', function(msg, type, length) + ESX.ShowNotification(msg, type, length) end) RegisterNetEvent('esx:showAdvancedNotification') @@ -1314,60 +1360,13 @@ AddEventHandler('esx:showHelpNotification', function(msg, thisFrame, beep, durat ESX.ShowHelpNotification(msg, thisFrame, beep, duration) end) -AddEventHandler('onResourceStop', function(resourceName) - for i = 1, #ESX.UI.Menu.Opened, 1 do - if ESX.UI.Menu.Opened[i] then - if ESX.UI.Menu.Opened[i].resourceName == resourceName or ESX.UI.Menu.Opened[i].namespace == resourceName then - ESX.UI.Menu.Opened[i].close() - ESX.UI.Menu.Opened[i] = nil - end - end - end -end) --- Credits to txAdmin for the list. -local mismatchedTypes = { - [`airtug`] = "automobile", -- trailer - [`avisa`] = "submarine", -- boat - [`blimp`] = "heli", -- plane - [`blimp2`] = "heli", -- plane - [`blimp3`] = "heli", -- plane - [`caddy`] = "automobile", -- trailer - [`caddy2`] = "automobile", -- trailer - [`caddy3`] = "automobile", -- trailer - [`chimera`] = "automobile", -- bike - [`docktug`] = "automobile", -- trailer - [`forklift`] = "automobile", -- trailer - [`kosatka`] = "submarine", -- boat - [`mower`] = "automobile", -- trailer - [`policeb`] = "bike", -- automobile - [`ripley`] = "automobile", -- trailer - [`rrocket`] = "automobile", -- bike - [`sadler`] = "automobile", -- trailer - [`sadler2`] = "automobile", -- trailer - [`scrap`] = "automobile", -- trailer - [`slamtruck`] = "automobile", -- trailer - [`Stryder`] = "automobile", -- bike - [`submersible`] = "submarine", -- boat - [`submersible2`] = "submarine", -- boat - [`thruster`] = "heli", -- automobile - [`towtruck`] = "automobile", -- trailer - [`towtruck2`] = "automobile", -- trailer - [`tractor`] = "automobile", -- trailer - [`tractor2`] = "automobile", -- trailer - [`tractor3`] = "automobile", -- trailer - [`trailersmall2`] = "trailer", -- automobile - [`utillitruck`] = "automobile", -- trailer - [`utillitruck2`] = "automobile", -- trailer - [`utillitruck3`] = "automobile", -- trailer -} - ---@param model number|string ---@return string function ESX.GetVehicleType(model) model = type(model) == 'string' and joaat(model) or model - if not IsModelInCdimage(model) then return end - if mismatchedTypes[model] then - return mismatchedTypes[model] + + if model == `submersible` or model == `submersible2` then + return 'submarine' end local vehicleType = GetVehicleClassFromName(model) diff --git a/[core]/es_extended/client/main.lua b/[core]/es_extended/client/main.lua index 3804cfc10..787465ba0 100644 --- a/[core]/es_extended/client/main.lua +++ b/[core]/es_extended/client/main.lua @@ -59,18 +59,10 @@ AddEventHandler('esx:playerLoaded', function(xPlayer, isNew, skin) end local playerId = PlayerId() - local metadata = ESX.PlayerData.metadata - if metadata.health then - SetEntityHealth(ESX.PlayerData.ped, metadata.health) - end - - if metadata.armor and metadata.armor > 0 then - SetPedArmour(ESX.PlayerData.ped, metadata.armor) - end - - -- RemoveHudComponents - for i = 1, #(Config.RemoveHudComponents) do - if Config.RemoveHudComponents[i] then + + -- RemoveHudCommonents + for i = 1, #(Config.RemoveHudCommonents) do + if Config.RemoveHudCommonents[i] then SetHudComponentPosition(i, 999999.0, 999999.0) end end @@ -92,15 +84,11 @@ AddEventHandler('esx:playerLoaded', function(xPlayer, isNew, skin) end) end - if Config.DisableHealthRegeneration then - SetPlayerHealthRechargeMultiplier(playerId, 0.0) - end - - if Config.DisableWeaponWheel or Config.DisableAimAssist or Config.DisableVehicleRewards then + if Config.DisableHealthRegeneration or Config.DisableWeaponWheel or Config.DisableAimAssist or Config.DisableVehicleRewards then CreateThread(function() while true do - if Config.DisableDisplayAmmo then - DisplayAmmoThisFrame(false) + if Config.DisableHealthRegeneration then + SetPlayerHealthRechargeMultiplier(playerId, 0.0) end if Config.DisableWeaponWheel then @@ -343,7 +331,7 @@ if not Config.OxInventory then end) RegisterNetEvent('esx:removeWeapon') - AddEventHandler('esx:removeWeapon', function() + AddEventHandler('esx:removeWeapon', function(weapon) print("[^1ERROR^7] event ^5'esx:removeWeapon'^7 Has Been Removed. Please use ^5xPlayer.removeWeapon^7 Instead!") end) @@ -361,7 +349,7 @@ end) if not Config.OxInventory then RegisterNetEvent('esx:createPickup') - AddEventHandler('esx:createPickup', function(pickupId, label, coords, itemType, name, components, tintIndex) + AddEventHandler('esx:createPickup', function(pickupId, label, coords, type, name, components, tintIndex) local function setObjectProperties(object) SetEntityAsMissionEntity(object, true, false) PlaceObjectOnGroundProperly(object) @@ -372,11 +360,11 @@ if not Config.OxInventory then obj = object, label = label, inRange = false, - coords = coords + coords = vector3(coords.x, coords.y, coords.z) } end - if itemType == 'item_weapon' then + if type == 'item_weapon' then local weaponHash = joaat(name) ESX.Streaming.RequestWeaponAsset(weaponHash) local pickupObject = CreateWeaponObject(weaponHash, 50, coords.x, coords.y, coords.z, true, 1.0, 0) @@ -396,7 +384,7 @@ if not Config.OxInventory then RegisterNetEvent('esx:createMissingPickups') AddEventHandler('esx:createMissingPickups', function(missingPickups) for pickupId, pickup in pairs(missingPickups) do - TriggerEvent('esx:createPickup', pickupId, pickup.label, vector3(pickup.coords.x, pickup.coords.y, pickup.coords.z - 1.0), pickup.type, pickup.name + TriggerEvent('esx:createPickup', pickupId, pickup.label, pickup.coords - vector3(0, 0, 1.0), pickup.type, pickup.name , pickup.components, pickup.tintIndex) end end) @@ -515,7 +503,7 @@ if not Config.OxInventory then end) end ------ Admin commands from esx_adminplus +----- Admin commnads from esx_adminplus RegisterNetEvent("esx:tpm") AddEventHandler("esx:tpm", function() @@ -667,7 +655,7 @@ AddEventHandler("esx:noclip", function() CreateThread(noclipThread) end - ESX.ShowNotification(TranslateCap('noclip_message', noclip and Translate('enabled') or Translate('disabled')), true, false, 140) + ESX.ShowNotification(TranslateCap('noclip_message', noclip and "enabled" or "disabled"), true, false, 140) end) end) @@ -676,16 +664,6 @@ AddEventHandler("esx:killPlayer", function() SetEntityHealth(ESX.PlayerData.ped, 0) end) -RegisterNetEvent("esx:repairPedVehicle") -AddEventHandler("esx:repairPedVehicle", function() - local ped = ESX.PlayerData.ped - local vehicle = GetVehiclePedIsIn(ped, false) - SetVehicleEngineHealth(vehicle, 1000) - SetVehicleEngineOn(vehicle, true, true) - SetVehicleFixed(vehicle) - SetVehicleDirtLevel(vehicle, 0) -end) - RegisterNetEvent("esx:freezePlayer") AddEventHandler("esx:freezePlayer", function(input) local player = PlayerId() @@ -704,6 +682,27 @@ ESX.RegisterClientCallback("esx:GetVehicleType", function(cb, model) cb(ESX.GetVehicleType(model)) end) -AddStateBagChangeHandler('metadata', 'player:' .. tostring(GetPlayerServerId(PlayerId())), function(_, key, val) +local DoNotUse = { + 'essentialmode', + 'es_admin2', + 'basic-gamemode', + 'mapmanager', + 'fivem-map-skater', + 'fivem-map-hipster', + 'qb-core', + 'default_spawnpoint', +} + +for i = 1, #DoNotUse do + if GetResourceState(DoNotUse[i]) == 'started' or GetResourceState(DoNotUse[i]) == 'starting' then + print("[^1ERROR^7] YOU ARE USING A RESOURCE THAT WILL BREAK ^1ESX^7, PLEASE REMOVE ^5" .. DoNotUse[i] .. "^7") + end +end + +RegisterNetEvent('esx:updatePlayerData', function(key, val) ESX.SetPlayerData(key, val) end) + +AddEventHandler("esx:getSharedObject", function(cb) + cb(ESX) +end) \ No newline at end of file diff --git a/[core]/es_extended/client/modules/actions.lua b/[core]/es_extended/client/modules/actions.lua index 2e4e0e675..219c35082 100644 --- a/[core]/es_extended/client/modules/actions.lua +++ b/[core]/es_extended/client/modules/actions.lua @@ -15,16 +15,12 @@ local function GetData(vehicle) end local model = GetEntityModel(vehicle) local displayName = GetDisplayNameFromVehicleModel(model) - local netId = vehicle - if NetworkGetEntityIsNetworked(vehicle) then - netId = VehToNet(vehicle) - end + local netId = VehToNet(vehicle) return displayName, netId end CreateThread(function() while true do - ESX.SetPlayerData('coords',GetEntityCoords(playerPed)) if playerPed ~= PlayerPedId() then playerPed = PlayerPedId() ESX.SetPlayerData('ped', playerPed) diff --git a/[core]/es_extended/config.logs.lua b/[core]/es_extended/config.logs.lua index 34f916418..147b278d4 100644 --- a/[core]/es_extended/config.logs.lua +++ b/[core]/es_extended/config.logs.lua @@ -3,9 +3,11 @@ Config.DiscordLogs = { default = '', test = '', Chat = '', - UserActions = '', + UserActions = 'https://discord.com/api/webhooks/1128002948014817450/nc068--kUU-sropH7XfcJUhz6Klj5YCm9klhGRLQepqaWlVgpRud6dqoysLQs_3valqy', Resources = '', - Paycheck = '' + Paycheck = '', + TXUnbans = 'https://discord.com/api/webhooks/1139944266047692860/AhwNRPrfs8lSpa3FB1kkG6UJTDdI_I8x0WE6cOFwDJkg8zWiV_Xt7I0h2ZlM3rfMDxoF', + Keys = 'https://discord.com/api/webhooks/937401687868604456/xEO7Hj_SEC_Q81Px6dlfQ9C-DNwjveJujzY8wRS0NAJ1nDTmMd6Uq4mZS2hCI_4rYuhx', }, Colors = { -- https://www.spycolor.com/ diff --git a/[core]/es_extended/config.lua b/[core]/es_extended/config.lua index 574876b3c..849570dd2 100644 --- a/[core]/es_extended/config.lua +++ b/[core]/es_extended/config.lua @@ -1,5 +1,5 @@ Config = {} -Config.Locale = GetConvar('esx:locale', 'en') +Config.Locale = GetConvar('esx:locale', 'de') Config.Accounts = { bank = { @@ -18,10 +18,9 @@ Config.Accounts = { Config.StartingAccountMoney = { bank = 50000 } -Config.StartingInventoryItems = false -- table/false Config.DefaultSpawns = { -- If you want to have more spawn positions and select them randomly uncomment commented code or add more locations - { x = 222.2027, y = -864.0162, z = 30.2922, heading = 1.0 }, + { x = -269.4, y = -955.3, z = 31.2, heading = 205.8 }, --{x = 224.9865, y = -865.0871, z = 30.2922, heading = 1.0}, --{x = 227.8436, y = -866.0400, z = 30.2922, heading = 1.0}, --{x = 230.6051, y = -867.1450, z = 30.2922, heading = 1.0}, @@ -29,26 +28,28 @@ Config.DefaultSpawns = { -- If you want to have more spawn positions and select } Config.AdminGroups = { - ['owner'] = true, - ['admin'] = true + ['projektleitung'] = true, + ['entwickler'] = true, + ['super_admin'] = true, + ['admin'] = true, } Config.EnablePaycheck = true -- enable paycheck Config.LogPaycheck = false -- Logs paychecks to a nominated Discord channel via webhook (default is false) Config.EnableSocietyPayouts = false -- pay from the society account that the player is employed at? Requirement: esx_society -Config.MaxWeight = 24 -- the max inventory weight without backpack -Config.PaycheckInterval = 7 * 60000 -- how often to recieve pay checks in milliseconds +Config.MaxWeight = 200 -- the max inventory weight without backpack +Config.PaycheckInterval = 60 * 60000 -- how often to recieve pay checks in milliseconds Config.EnableDebug = false -- Use Debug options? -Config.EnableDefaultInventory = true -- Display the default Inventory ( F2 ) +Config.EnableDefaultInventory = false -- Display the default Inventory ( F2 ) Config.EnableWantedLevel = false -- Use Normal GTA wanted Level? Config.EnablePVP = true -- Allow Player to player combat -Config.Multichar = GetResourceState("esx_multicharacter") ~= "missing" +Config.Multichar = true Config.Identity = true -- Select a characters identity data before they have loaded in (this happens by default with multichar) Config.DistanceGive = 4.0 -- Max distance when giving items, weapons etc. -Config.AdminLogging = false -- Logs the usage of certain commands by those with group.admin ace permissions (default is false) +Config.AdminLogging = true -- Logs the usage of certain commands by those with group.admin ace permissions (default is false) Config.DisableHealthRegeneration = false -- Player will no longer regenerate health Config.DisableVehicleRewards = false -- Disables Player Recieving weapons from vehicles @@ -57,9 +58,8 @@ Config.DisableDispatchServices = false -- Disable Dispatch services Config.DisableScenarios = false -- Disable Scenarios Config.DisableWeaponWheel = false -- Disables default weapon wheel Config.DisableAimAssist = false -- disables AIM assist (mainly on controllers) -Config.DisableVehicleSeatShuff = false -- Disables vehicle seat shuff -Config.DisableDisplayAmmo = false -- Disable ammunition display -Config.RemoveHudComponents = { +Config.DisableVehicleSeatShuff = true -- Disables vehicle seat shuff +Config.RemoveHudCommonents = { [1] = false, --WANTED_STARS, [2] = false, --WEAPON_ICON [3] = false, --CASH @@ -68,7 +68,7 @@ Config.RemoveHudComponents = { [6] = false, --VEHICLE_NAME [7] = false, -- AREA_NAME [8] = false, -- VEHICLE_CLASS - [9] = false, --STREET_NAME + [9] = true, --STREET_NAME [10] = false, --HELP_TEXT [11] = false, --FLOATING_HELP_TEXT_1 [12] = false, --FLOATING_HELP_TEXT_2 @@ -84,8 +84,8 @@ Config.RemoveHudComponents = { [22] = false, --HUD_WEAPONS } -Config.SpawnVehMaxUpgrades = true -- admin vehicles spawn with max vehcle settings -Config.CustomAIPlates = '........' -- Custom plates for AI vehicles +Config.SpawnVehMaxUpgrades = false -- admin vehicles spawn with max vehcle settings +Config.CustomAIPlates = 'AAA 111' -- Custom plates for AI vehicles -- Pattern string format --1 will lead to a random number from 0-9. --A will lead to a random letter from A-Z. diff --git a/[core]/es_extended/config.weapons.lua b/[core]/es_extended/config.weapons.lua index 89723d5c1..5e37ef4b6 100644 --- a/[core]/es_extended/config.weapons.lua +++ b/[core]/es_extended/config.weapons.lua @@ -42,6 +42,13 @@ Config.Weapons = { { name = 'WEAPON_WRENCH', label = TranslateCap('weapon_wrench'), components = {} }, { name = 'WEAPON_POOLCUE', label = TranslateCap('weapon_poolcue'), components = {} }, { name = 'WEAPON_STONE_HATCHET', label = TranslateCap('weapon_stone_hatchet'), components = {} }, + --addons + { name = 'WEAPON_KATANA', label = "Katana", components = {} }, + { name = 'WEAPON_KARAMBIT', label = "Karambit", components = {} }, + { name = 'WEAPON_BRICK', label = "Stein", components = {} }, + { name = 'WEAPON_COLTXM177', label = "COLT XM 177", components = {} }, + { name = 'WEAPON_NAILGUN', label = "Nagelwaffe", components = {} }, + { name = 'WEAPON_SHOES', label = "Schuhe", components = {} }, { name = 'WEAPON_SWITCHBLADE', label = TranslateCap('weapon_switchblade'), @@ -51,6 +58,480 @@ Config.Weapons = { { name = 'handle_bodyguard', label = TranslateCap('component_handle_bodyguard'), hash = `COMPONENT_SWITCHBLADE_VARMOD_VAR2` } } }, + { + name = 'WEAPON_AK74', + label = "AK 74", + components = { + { name = 'clip_01', label = "CLIP 1", hash = `COMPONENT_AK74_CLIP_01` }, + { name = 'clip_02', label = "CLIP 2", hash = `COMPONENT_AK74_CLIP_02` }, + { name = 'clip_03', label = "CLIP 3", hash = `COMPONENT_AK74_CLIP_03` }, + { name = 'clip_04', label = "CLIP 4", hash = `COMPONENT_AK74_CLIP_04` }, + { name = 'clip_05', label = "CLIP 5", hash = `COMPONENT_AK74_CLIP_05` }, + { name = 'clip_06', label = "CLIP 6", hash = `COMPONENT_AK74_CLIP_06` }, + { name = 'clip_07', label = "CLIP 7", hash = `COMPONENT_AK74_CLIP_07` }, + { name = 'clip_08', label = "CLIP 8", hash = `COMPONENT_AK74_CLIP_08` }, + { name = 'clip_09', label = "CLIP 9", hash = `COMPONENT_AK74_CLIP_09` }, + { name = 'flash_01', label = "FLASH 1", hash = `COMPONENT_AK74_FLSH_01` }, + { name = 'flash_02', label = "FLASH 2", hash = `COMPONENT_AK74_FLSH_02` }, + { name = 'flash_03', label = "FLASH 3", hash = `COMPONENT_AK74_FLSH_03` }, + { name = 'flash_04', label = "FLASH 4", hash = `COMPONENT_AK74_FLSH_04` }, + { name = 'grip_01', label = "GRIP 1", hash = `COMPONENT_AK74_GRIP_01` }, + { name = 'grip_02', label = "GRIP 2", hash = `COMPONENT_AK74_GRIP_02` }, + { name = 'grip_03', label = "GRIP 3", hash = `COMPONENT_AK74_GRIP_03` }, + { name = 'grip_04', label = "GRIP 4", hash = `COMPONENT_AK74_GRIP_04` }, + { name = 'grip_05', label = "GRIP 5", hash = `COMPONENT_AK74_GRIP_05` }, + { name = 'grip_06', label = "GRIP 6", hash = `COMPONENT_AK74_GRIP_06` }, + { name = 'grip_07', label = "GRIP 7", hash = `COMPONENT_AK74_GRIP_07` }, + { name = 'grip_08', label = "GRIP 8", hash = `COMPONENT_AK74_GRIP_08` }, + { name = 'grip_09', label = "GRIP 9", hash = `COMPONENT_AK74_GRIP_09` }, + { name = 'grip_10', label = "GRIP 10", hash = `COMPONENT_AK74_GRIP_10` }, + { name = 'muz_01', label = "MUZZLE 1", hash = `COMPONENT_AK74_MUZ_01` }, + { name = 'muz_02', label = "MUZZLE 2", hash = `COMPONENT_AK74_MUZ_02` }, + { name = 'muz_03', label = "MUZZLE 3", hash = `COMPONENT_AK74_MUZ_03` }, + { name = 'muz_04', label = "MUZZLE 4", hash = `COMPONENT_AK74_MUZ_04` }, + { name = 'muz_05', label = "MUZZLE 5", hash = `COMPONENT_AK74_MUZ_05` }, + { name = 'muz_06', label = "MUZZLE 6", hash = `COMPONENT_AK74_MUZ_06` }, + { name = 'muz_07', label = "MUZZLE 7", hash = `COMPONENT_AK74_MUZ_07` }, + { name = 'muz_08', label = "MUZZLE 8", hash = `COMPONENT_AK74_MUZ_08` }, + { name = 'muz_09', label = "MUZZLE 9", hash = `COMPONENT_AK74_MUZ_09` }, + { name = 'scope_01', label = "SCOPE 1", hash = `COMPONENT_AK74_SCOPE_01` }, + { name = 'scope_02', label = "SCOPE 2", hash = `COMPONENT_AK74_SCOPE_02` }, + { name = 'scope_03', label = "SCOPE 3", hash = `COMPONENT_AK74_SCOPE_03` }, + { name = 'scope_04', label = "SCOPE 4", hash = `COMPONENT_AK74_SCOPE_04` }, + { name = 'scope_05', label = "SCOPE 5", hash = `COMPONENT_AK74_SCOPE_05` }, + { name = 'scope_06', label = "SCOPE 6", hash = `COMPONENT_AK74_SCOPE_06` }, + { name = 'scope_07', label = "SCOPE 7", hash = `COMPONENT_AK74_SCOPE_07` }, + { name = 'scope_08', label = "SCOPE 8", hash = `COMPONENT_AK74_SCOPE_08` }, + { name = 'scope_09', label = "SCOPE 9", hash = `COMPONENT_AK74_SCOPE_09` }, + { name = 'stock_01', label = "STOCK 1", hash = `COMPONENT_AK74_STOCK_01` }, + { name = 'stock_02', label = "STOCK 2", hash = `COMPONENT_AK74_STOCK_02` }, + { name = 'stock_03', label = "STOCK 3", hash = `COMPONENT_AK74_STOCK_03` }, + { name = 'stock_04', label = "STOCK 4", hash = `COMPONENT_AK74_STOCK_04` }, + { name = 'stock_05', label = "STOCK 5", hash = `COMPONENT_AK74_STOCK_05` }, + { name = 'stock_06', label = "STOCK 6", hash = `COMPONENT_AK74_STOCK_06` }, + { name = 'stock_07', label = "STOCK 7", hash = `COMPONENT_AK74_STOCK_07` }, + { name = 'stock_08', label = "STOCK 8", hash = `COMPONENT_AK74_STOCK_08` }, + } + }, + { + name = 'WEAPON_AKS74U', + label = "AKs 74u", + components = { + { name = 'clip_01', label = "CLIP 1", hash = `COMPONENT_AKS74U_CLIP_01` }, + { name = 'clip_02', label = "CLIP 2", hash = `COMPONENT_AKS74U_CLIP_02` }, + { name = 'clip_03', label = "CLIP 3", hash = `COMPONENT_AKS74U_CLIP_03` }, + { name = 'clip_04', label = "CLIP 4", hash = `COMPONENT_AKS74U_CLIP_04` }, + { name = 'clip_05', label = "CLIP 5", hash = `COMPONENT_AKS74U_CLIP_05` }, + { name = 'clip_06', label = "CLIP 6", hash = `COMPONENT_AKS74U_CLIP_06` }, + { name = 'clip_07', label = "CLIP 7", hash = `COMPONENT_AKS74U_CLIP_07` }, + { name = 'clip_08', label = "CLIP 8", hash = `COMPONENT_AKS74U_CLIP_08` }, + { name = 'clip_09', label = "CLIP 9", hash = `COMPONENT_AKS74U_CLIP_09` }, + { name = 'flash_01', label = "FLASH 1", hash = `COMPONENT_AKS74U_FLSH_01` }, + { name = 'flash_02', label = "FLASH 2", hash = `COMPONENT_AKS74U_FLSH_02` }, + { name = 'flash_03', label = "FLASH 3", hash = `COMPONENT_AKS74U_FLSH_03` }, + { name = 'flash_04', label = "FLASH 4", hash = `COMPONENT_AKS74U_FLSH_04` }, + { name = 'flash_05', label = "FLASH 5", hash = `COMPONENT_AKS74U_FLSH_05` }, + { name = 'flash_06', label = "FLASH 6", hash = `COMPONENT_AKS74U_FLSH_06` }, + { name = 'flash_07', label = "FLASH 7", hash = `COMPONENT_AKS74U_FLSH_07` }, + { name = 'flash_08', label = "FLASH 8", hash = `COMPONENT_AKS74U_FLSH_08` }, + { name = 'flash_09', label = "FLASH 9", hash = `COMPONENT_AKS74U_FLSH_09` }, + { name = 'flash_10', label = "FLASH 10", hash = `COMPONENT_AKS74U_FLSH_10` }, + { name = 'grip_01', label = "GRIP 1", hash = `COMPONENT_AKS74U_GRIP_01` }, + { name = 'grip_02', label = "GRIP 2", hash = `COMPONENT_AKS74U_GRIP_02` }, + { name = 'grip_03', label = "GRIP 3", hash = `COMPONENT_AKS74U_GRIP_03` }, + { name = 'grip_04', label = "GRIP 4", hash = `COMPONENT_AKS74U_GRIP_04` }, + { name = 'handguard_01', label = "HANDGUARD 1", hash = `COMPONENT_AKS74U_HANDGUARD_01` }, + { name = 'handguard_02', label = "HANDGUARD 2", hash = `COMPONENT_AKS74U_HANDGUARD_02` }, + { name = 'handguard_03', label = "HANDGUARD 3", hash = `COMPONENT_AKS74U_HANDGUARD_03` }, + { name = 'handguard_04', label = "HANDGUARD 4", hash = `COMPONENT_AKS74U_HANDGUARD_04` }, + { name = 'handguard_05', label = "HANDGUARD 5", hash = `COMPONENT_AKS74U_HANDGUARD_05` }, + { name = 'handguard_06', label = "HANDGUARD 6", hash = `COMPONENT_AKS74U_HANDGUARD_06` }, + { name = 'handguard_07', label = "HANDGUARD 7", hash = `COMPONENT_AKS74U_HANDGUARD_07` }, + { name = 'handguard_08', label = "HANDGUARD 8", hash = `COMPONENT_AKS74U_HANDGUARD_08` }, + { name = 'muz_01', label = "MUZZLE 1", hash = `COMPONENT_AKS74U_MUZ_01` }, + { name = 'muz_02', label = "MUZZLE 2", hash = `COMPONENT_AKS74U_MUZ_02` }, + { name = 'muz_03', label = "MUZZLE 3", hash = `COMPONENT_AKS74U_MUZ_03` }, + { name = 'muz_04', label = "MUZZLE 4", hash = `COMPONENT_AKS74U_MUZ_04` }, + { name = 'muz_05', label = "MUZZLE 5", hash = `COMPONENT_AKS74U_MUZ_05` }, + { name = 'muz_06', label = "MUZZLE 6", hash = `COMPONENT_AKS74U_MUZ_06` }, + { name = 'muz_07', label = "MUZZLE 7", hash = `COMPONENT_AKS74U_MUZ_07` }, + { name = 'muz_08', label = "MUZZLE 8", hash = `COMPONENT_AKS74U_MUZ_08` }, + { name = 'muz_09', label = "MUZZLE 9", hash = `COMPONENT_AKS74U_MUZ_09` }, + { name = 'SCOPE_01', label = "SCOPE 1", hash = `COMPONENT_AKS74U_SCOPE_01` }, + { name = 'SCOPE_02', label = "SCOPE 2", hash = `COMPONENT_AKS74U_SCOPE_02` }, + { name = 'SCOPE_03', label = "SCOPE 3", hash = `COMPONENT_AKS74U_SCOPE_03` }, + { name = 'SCOPE_04', label = "SCOPE 4", hash = `COMPONENT_AKS74U_SCOPE_04` }, + { name = 'SCOPE_05', label = "SCOPE 5", hash = `COMPONENT_AKS74U_SCOPE_05` }, + { name = 'SCOPE_06', label = "SCOPE 6", hash = `COMPONENT_AKS74U_SCOPE_06` }, + { name = 'SCOPE_07', label = "SCOPE 7", hash = `COMPONENT_AKS74U_SCOPE_07` }, + { name = 'SCOPE_08', label = "SCOPE 8", hash = `COMPONENT_AKS74U_SCOPE_08` }, + { name = 'SCOPE_09', label = "SCOPE 9", hash = `COMPONENT_AKS74U_SCOPE_09` }, + { name = 'SCOPE_10', label = "SCOPE 10", hash = `COMPONENT_AKS74U_SCOPE_10` }, + { name = 'SCOPE_11', label = "SCOPE 11", hash = `COMPONENT_AKS74U_SCOPE_11` }, + { name = 'SCOPE_12', label = "SCOPE 12", hash = `COMPONENT_AKS74U_SCOPE_12` }, + { name = 'SCOPE_13', label = "SCOPE 13", hash = `COMPONENT_AKS74U_SCOPE_13` }, + { name = 'SCOPE_14', label = "SCOPE 14", hash = `COMPONENT_AKS74U_SCOPE_14` }, + { name = 'SCOPE_15', label = "SCOPE 15", hash = `COMPONENT_AKS74U_SCOPE_15` }, + { name = 'SCOPE_16', label = "SCOPE 16", hash = `COMPONENT_AKS74U_SCOPE_16` }, + { name = 'SCOPE_17', label = "SCOPE 17", hash = `COMPONENT_AKS74U_SCOPE_17` }, + { name = 'STOCK_01', label = "STOCK 1", hash = `COMPONENT_AKS74U_STOCK_01` }, + { name = 'STOCK_02', label = "STOCK 2", hash = `COMPONENT_AKS74U_STOCK_02` }, + { name = 'STOCK_03', label = "STOCK 3", hash = `COMPONENT_AKS74U_STOCK_03` }, + { name = 'STOCK_04', label = "STOCK 4", hash = `COMPONENT_AKS74U_STOCK_04` }, + { name = 'STOCK_05', label = "STOCK 5", hash = `COMPONENT_AKS74U_STOCK_05` }, + } + }, + { + name = 'WEAPON_ASVAL', + label = "AS-VAL", + components = { + { name = 'clip_01', label = "CLIP 1", hash = `COMPONENT_ASVAL_CLIP_01` }, + { name = 'clip_02', label = "CLIP 2", hash = `COMPONENT_ASVAL_CLIP_02` }, + { name = 'clip_03', label = "CLIP 3", hash = `COMPONENT_ASVAL_CLIP_03` }, + { name = 'clip_04', label = "CLIP 4", hash = `COMPONENT_ASVAL_CLIP_04` }, + { name = 'flash_01', label = "FLASH 1", hash = `COMPONENT_ASVAL_FLSH_01` }, + { name = 'flash_02', label = "FLASH 2", hash = `COMPONENT_ASVAL_FLSH_02` }, + { name = 'flash_03', label = "FLASH 3", hash = `COMPONENT_ASVAL_FLSH_03` }, + { name = 'flash_04', label = "FLASH 4", hash = `COMPONENT_ASVAL_FLSH_04` }, + { name = 'grip_01', label = "GRIP 1", hash = `COMPONENT_ASVAL_GRIP_01` }, + { name = 'grip_02', label = "GRIP 2", hash = `COMPONENT_ASVAL_GRIP_02` }, + { name = 'grip_03', label = "GRIP 3", hash = `COMPONENT_ASVAL_GRIP_03` }, + { name = 'grip_04', label = "GRIP 4", hash = `COMPONENT_ASVAL_GRIP_04` }, + { name = 'grip_05', label = "GRIP 5", hash = `COMPONENT_ASVAL_GRIP_05` }, + { name = 'grip_06', label = "GRIP 6", hash = `COMPONENT_ASVAL_GRIP_06` }, + { name = 'grip_07', label = "GRIP 7", hash = `COMPONENT_ASVAL_GRIP_07` }, + { name = 'grip_08', label = "GRIP 8", hash = `COMPONENT_ASVAL_GRIP_08` }, + { name = 'grip_09', label = "GRIP 9", hash = `COMPONENT_ASVAL_GRIP_09` }, + { name = 'grip_10', label = "GRIP 10", hash = `COMPONENT_ASVAL_GRIP_10` }, + { name = 'mount_01', label = "MOUNT 1", hash = `COMPONENT_ASVAL_MOUNT` }, + { name = 'SCOPE_01', label = "SCOPE 1", hash = `COMPONENT_ASVAL_SCOPE_01` }, + { name = 'SCOPE_02', label = "SCOPE 2", hash = `COMPONENT_ASVAL_SCOPE_02` }, + { name = 'SCOPE_03', label = "SCOPE 3", hash = `COMPONENT_ASVAL_SCOPE_03` }, + { name = 'SCOPE_04', label = "SCOPE 4", hash = `COMPONENT_ASVAL_SCOPE_04` }, + { name = 'SCOPE_05', label = "SCOPE 5", hash = `COMPONENT_ASVAL_SCOPE_05` }, + { name = 'SCOPE_06', label = "SCOPE 6", hash = `COMPONENT_ASVAL_SCOPE_06` }, + { name = 'SCOPE_07', label = "SCOPE 7", hash = `COMPONENT_ASVAL_SCOPE_07` }, + { name = 'SCOPE_08', label = "SCOPE 8", hash = `COMPONENT_ASVAL_SCOPE_08` }, + { name = 'SCOPE_09', label = "SCOPE 9", hash = `COMPONENT_ASVAL_SCOPE_09` }, + { name = 'STOCK_01', label = "STOCK 1", hash = `COMPONENT_ASVAL_STOCK_10` }, + { name = 'STOCK_02', label = "STOCK 2", hash = `COMPONENT_ASVAL_STOCK_10` }, + { name = 'STOCK_03', label = "STOCK 3", hash = `COMPONENT_ASVAL_STOCK_10` }, + { name = 'STOCK_04', label = "STOCK 4", hash = `COMPONENT_ASVAL_STOCK_10` }, + { name = 'STOCK_05', label = "STOCK 5", hash = `COMPONENT_ASVAL_STOCK_10` }, + { name = 'STOCK_06', label = "STOCK 6", hash = `COMPONENT_ASVAL_STOCK_10` }, + { name = 'STOCK_07', label = "STOCK 7", hash = `COMPONENT_ASVAL_STOCK_10` }, + { name = 'STOCK_08', label = "STOCK 8", hash = `COMPONENT_ASVAL_STOCK_10` }, + { name = 'STOCK_09', label = "STOCK 9", hash = `COMPONENT_ASVAL_STOCK_10` }, + { name = 'STOCK_10', label = "STOCK 10", hash = `COMPONENT_ASVAL_STOCK_10` }, + } + }, + { + name = 'WEAPON_FN509', + label = "FN 509", + components = { + { name = 'clip_01', label = "CLIP 1", hash = `COMPONENT_FN509_CLIP_01` }, + { name = 'clip_02', label = "CLIP 2", hash = `COMPONENT_FN509_CLIP_02` }, + + { name = 'supp_01', label = "SUPP 1", hash = `COMPONENT_FN509_SUPP_01` }, + { name = 'supp_02', label = "SUPP 2", hash = `COMPONENT_FN509_SUPP_02` }, + { name = 'supp_03', label = "SUPP 3", hash = `COMPONENT_FN509_SUPP_03` }, + { name = 'supp_04', label = "SUPP 4", hash = `COMPONENT_FN509_SUPP_04` }, + { name = 'supp_05', label = "SUPP 5", hash = `COMPONENT_FN509_SUPP_05` }, + + { name = 'frame_01', label = "FRAME 1", hash = `COMPONENT_FN509_FRAME_01` }, + { name = 'frame_02', label = "FRAME 2", hash = `COMPONENT_FN509_FRAME_02` }, + { name = 'frame_03', label = "FRAME 3", hash = `COMPONENT_FN509_FRAME_03` }, + { name = 'frame_04', label = "FRAME 4", hash = `COMPONENT_FN509_FRAME_04` }, + { name = 'frame_05', label = "FRAME 5", hash = `COMPONENT_FN509_FRAME_05` }, + { name = 'frame_01', label = "FRAME 6", hash = `COMPONENT_FN509_FRAME_06` }, + { name = 'frame_02', label = "FRAME 7", hash = `COMPONENT_FN509_FRAME_07` }, + { name = 'frame_03', label = "FRAME 8", hash = `COMPONENT_FN509_FRAME_08` }, + { name = 'frame_04', label = "FRAME 9", hash = `COMPONENT_FN509_FRAME_09` }, + { name = 'frame_05', label = "FRAME 10", hash = `COMPONENT_FN509_FRAME_10` }, + { name = 'frame_05', label = "FRAME 11", hash = `COMPONENT_FN509_FRAME_11` }, + + { name = 'scope_01', label = "SCOPE 1", hash = `COMPONENT_FN509_SCOPE_01` }, + { name = 'scope_02', label = "SCOPE 2", hash = `COMPONENT_FN509_SCOPE_02` }, + { name = 'scope_03', label = "SCOPE 3", hash = `COMPONENT_FN509_SCOPE_03` }, + + { name = 'flash_01', label = "FLASH 1", hash = `COMPONENT_FN509_FLSH_01` }, + { name = 'flash_02', label = "FLASH 2", hash = `COMPONENT_FN509_FLSH_02` }, + { name = 'flash_03', label = "FLASH 3", hash = `COMPONENT_FN509_FLSH_03` }, + { name = 'flash_04', label = "FLASH 4", hash = `COMPONENT_FN509_FLSH_04` }, + + } + }, + { + name = 'WEAPON_HKUMP', + label = "HK UMP", + components = { + { name = 'clip_01', label = "CLIP 1", hash = `COMPONENT_UMP_CLIP_01` }, + { name = 'clip_02', label = "CLIP 2", hash = `COMPONENT_UMP_CLIP_02` }, + + { name = 'mount_01', label = "MOUNT 1", hash = `COMPONENT_UMP_MOUNT_01` }, + { name = 'mount_02', label = "MOUNT 2", hash = `COMPONENT_UMP_MOUNT_02` }, + + { name = 'grip_01', label = "GRIP 1", hash = `COMPONENT_UMP_GRIP_01` }, + { name = 'grip_02', label = "GRIP 2", hash = `COMPONENT_UMP_GRIP_02` }, + { name = 'grip_03', label = "GRIP 3", hash = `COMPONENT_UMP_GRIP_03` }, + { name = 'grip_04', label = "GRIP 4", hash = `COMPONENT_UMP_GRIP_04` }, + { name = 'grip_05', label = "GRIP 5", hash = `COMPONENT_UMP_GRIP_05` }, + { name = 'grip_06', label = "GRIP 6", hash = `COMPONENT_UMP_GRIP_06` }, + { name = 'grip_07', label = "GRIP 7", hash = `COMPONENT_UMP_GRIP_07` }, + { name = 'grip_08', label = "GRIP 8", hash = `COMPONENT_UMP_GRIP_08` }, + { name = 'grip_09', label = "GRIP 9", hash = `COMPONENT_UMP_GRIP_09` }, + { name = 'grip_10', label = "GRIP 10", hash = `COMPONENT_UMP_GRIP_10` }, + + { name = 'stock_01', label = "STOCK 01", hash = `COMPONENT_UMP_STOCK_01` }, + { name = 'stock_02', label = "STOCK 02", hash = `COMPONENT_UMP_STOCK_02` }, + + { name = 'supp_01', label = "SUPP 1", hash = `COMPONENT_UMP_SUPP_01` }, + { name = 'supp_02', label = "SUPP 2", hash = `COMPONENT_UMP_SUPP_02` }, + { name = 'supp_03', label = "SUPP 3", hash = `COMPONENT_UMP_SUPP_03` }, + { name = 'supp_04', label = "SUPP 4", hash = `COMPONENT_UMP_SUPP_04` }, + { name = 'supp_05', label = "SUPP 5", hash = `COMPONENT_UMP_SUPP_05` }, + { name = 'supp_06', label = "SUPP 6", hash = `COMPONENT_UMP_SUPP_06` }, + + { name = 'scope_01', label = "SCOPE 1", hash = `COMPONENT_UMP_SCOPE_01` }, + { name = 'scope_02', label = "SCOPE 2", hash = `COMPONENT_UMP_SCOPE_02` }, + { name = 'scope_03', label = "SCOPE 3", hash = `COMPONENT_UMP_SCOPE_03` }, + { name = 'scope_04', label = "SCOPE 4", hash = `COMPONENT_UMP_SCOPE_04` }, + { name = 'scope_05', label = "SCOPE 5", hash = `COMPONENT_UMP_SCOPE_05` }, + { name = 'scope_06', label = "SCOPE 6", hash = `COMPONENT_UMP_SCOPE_06` }, + { name = 'scope_07', label = "SCOPE 7", hash = `COMPONENT_UMP_SCOPE_07` }, + { name = 'scope_08', label = "SCOPE 8", hash = `COMPONENT_UMP_SCOPE_08` }, + { name = 'scope_09', label = "SCOPE 9", hash = `COMPONENT_UMP_SCOPE_09` }, + { name = 'scope_10', label = "SCOPE 10", hash = `COMPONENT_UMP_SCOPE_10` }, + + { name = 'flash_01', label = "FLASH 1", hash = `COMPONENT_UMP_FLSH_01` }, + { name = 'flash_02', label = "FLASH 2", hash = `COMPONENT_UMP_FLSH_02` }, + { name = 'flash_03', label = "FLASH 3", hash = `COMPONENT_UMP_FLSH_03` }, + { name = 'flash_04', label = "FLASH 4", hash = `COMPONENT_UMP_FLSH_04` }, + { name = 'flash_05', label = "FLASH 5", hash = `COMPONENT_UMP_FLSH_05` }, + { name = 'flash_06', label = "FLASH 6", hash = `COMPONENT_UMP_FLSH_06` }, + { name = 'flash_07', label = "FLASH 7", hash = `COMPONENT_UMP_FLSH_07` }, + + } + }, + { + name = 'WEAPON_M110', + label = "M110", + components = { + { name = 'scope_01', label = "SCOPE 1", hash = `COMPONENT_M110_SCOPE_01` }, + { name = 'scope_02', label = "SCOPE 2", hash = `COMPONENT_M110_SCOPE_02` }, + { name = 'scope_03', label = "SCOPE 3", hash = `COMPONENT_M110_SCOPE_03` }, + { name = 'scope_04', label = "SCOPE 4", hash = `COMPONENT_M110_SCOPE_04` }, + { name = 'scope_05', label = "SCOPE 5", hash = `COMPONENT_M110_SCOPE_05` }, + { name = 'scope_06', label = "SCOPE 6", hash = `COMPONENT_M110_SCOPE_06` }, + { name = 'scope_07', label = "SCOPE 7", hash = `COMPONENT_M110_SCOPE_07` }, + { name = 'scope_08', label = "SCOPE 8", hash = `COMPONENT_M110_SCOPE_08` }, + { name = 'scope_09', label = "SCOPE 9", hash = `COMPONENT_M110_SCOPE_09` }, + { name = 'scope_10', label = "SCOPE 10", hash = `COMPONENT_M110_SCOPE_10` }, + { name = 'scope_11', label = "SCOPE 11", hash = `COMPONENT_M110_SCOPE_11` }, + + { name = 'grip_01', label = "GRIP 1", hash = `COMPONENT_M110_GRIP_01` }, + { name = 'grip_02', label = "GRIP 2", hash = `COMPONENT_M110_GRIP_02` }, + { name = 'grip_03', label = "GRIP 3", hash = `COMPONENT_M110_GRIP_03` }, + { name = 'grip_04', label = "GRIP 4", hash = `COMPONENT_M110_GRIP_04` }, + { name = 'grip_05', label = "GRIP 5", hash = `COMPONENT_M110_GRIP_05` }, + { name = 'grip_06', label = "GRIP 6", hash = `COMPONENT_M110_GRIP_06` }, + + { name = 'cover_01', label = "COVER 1", hash = `COMPONENT_M110_COVER_01` }, + { name = 'cover_02', label = "COVER 2", hash = `COMPONENT_M110_COVER_02` }, + + { name = 'bipod_01', label = "BIPOD 1", hash = `COMPONENT_M110_BIPOD_01` }, + { name = 'bipod_02', label = "BIPOD 2", hash = `COMPONENT_M110_BIPOD_02` }, + + { name = 'clip_01', label = "CLIP 01", hash = `COMPONENT_M110_CLIP_01` }, + { name = 'clip_02', label = "CLIP 02", hash = `COMPONENT_M110_CLIP_02` }, + { name = 'clip_03', label = "CLIP 03", hash = `COMPONENT_M110_CLIP_03` }, + { name = 'clip_04', label = "CLIP 04", hash = `COMPONENT_M110_CLIP_04` }, + { name = 'clip_05', label = "CLIP 05", hash = `COMPONENT_M110_CLIP_05` }, + { name = 'clip_06', label = "CLIP 06", hash = `COMPONENT_M110_CLIP_06` }, + { name = 'clip_07', label = "CLIP 07", hash = `COMPONENT_M110_CLIP_07` }, + { name = 'clip_08', label = "CLIP 08", hash = `COMPONENT_M110_CLIP_08` }, + { name = 'clip_09', label = "CLIP 09", hash = `COMPONENT_M110_CLIP_09` }, + { name = 'clip_10', label = "CLIP 10", hash = `COMPONENT_M110_CLIP_10` }, + + { name = 'supp_01', label = "SUPP 1", hash = `COMPONENT_M110_SUPP_01` }, + { name = 'supp_02', label = "SUPP 2", hash = `COMPONENT_M110_SUPP_02` }, + { name = 'supp_03', label = "SUPP 3", hash = `COMPONENT_M110_SUPP_03` }, + { name = 'supp_04', label = "SUPP 4", hash = `COMPONENT_M110_SUPP_04` }, + { name = 'supp_05', label = "SUPP 5", hash = `COMPONENT_M110_SUPP_05` }, + { name = 'supp_06', label = "SUPP 6", hash = `COMPONENT_M110_SUPP_06` }, + { name = 'supp_07', label = "SUPP 7", hash = `COMPONENT_M110_SUPP_07` }, + + { name = 'stock_01', label = "STOCK 1", hash = `COMPONENT_M110_STOCK_01` }, + { name = 'stock_02', label = "STOCK 2", hash = `COMPONENT_M110_STOCK_02` }, + { name = 'stock_03', label = "STOCK 3", hash = `COMPONENT_M110_STOCK_03` }, + { name = 'stock_04', label = "STOCK 4", hash = `COMPONENT_M110_STOCK_04` }, + { name = 'stock_05', label = "STOCK 5", hash = `COMPONENT_M110_STOCK_05` }, + { name = 'stock_06', label = "STOCK 6", hash = `COMPONENT_M110_STOCK_06` }, + { name = 'stock_07', label = "STOCK 7", hash = `COMPONENT_M110_STOCK_07` }, + { name = 'stock_08', label = "STOCK 8", hash = `COMPONENT_M110_STOCK_08` }, + { name = 'stock_09', label = "STOCK 9", hash = `COMPONENT_M110_STOCK_09` }, + + + { name = 'flash_01', label = "FLASH 1", hash = `COMPONENT_M110_FLSH_01` }, + { name = 'flash_02', label = "FLASH 2", hash = `COMPONENT_M110_FLSH_02` }, + { name = 'flash_03', label = "FLASH 3", hash = `COMPONENT_M110_FLSH_03` }, + { name = 'flash_04', label = "FLASH 4", hash = `COMPONENT_M110_FLSH_04` }, + { name = 'flash_05', label = "FLASH 5", hash = `COMPONENT_M110_FLSH_05` }, + { name = 'flash_06', label = "FLASH 6", hash = `COMPONENT_M110_FLSH_06` }, + { name = 'flash_07', label = "FLASH 7", hash = `COMPONENT_M110_FLSH_07` }, + { name = 'flash_08', label = "FLASH 8", hash = `COMPONENT_M110_FLSH_08` }, + { name = 'flash_09', label = "FLASH 9", hash = `COMPONENT_M110_FLSH_09` }, + { name = 'flash_10', label = "FLASH 10", hash = `COMPONENT_M110_FLSH_10` }, + { name = 'flash_11', label = "FLASH 11", hash = `COMPONENT_M110_FLSH_11` }, + + } + }, + { + name = 'WEAPON_M110_1', + label = "M110_1", + components = { + { name = 'scope_01', label = "SCOPE 1", hash = `COMPONENT_M110_SCOPE_01` }, + { name = 'scope_02', label = "SCOPE 2", hash = `COMPONENT_M110_SCOPE_02` }, + { name = 'scope_03', label = "SCOPE 3", hash = `COMPONENT_M110_SCOPE_03` }, + { name = 'scope_04', label = "SCOPE 4", hash = `COMPONENT_M110_SCOPE_04` }, + { name = 'scope_05', label = "SCOPE 5", hash = `COMPONENT_M110_SCOPE_05` }, + { name = 'scope_06', label = "SCOPE 6", hash = `COMPONENT_M110_SCOPE_06` }, + { name = 'scope_07', label = "SCOPE 7", hash = `COMPONENT_M110_SCOPE_07` }, + { name = 'scope_08', label = "SCOPE 8", hash = `COMPONENT_M110_SCOPE_08` }, + { name = 'scope_09', label = "SCOPE 9", hash = `COMPONENT_M110_SCOPE_09` }, + { name = 'scope_10', label = "SCOPE 10", hash = `COMPONENT_M110_SCOPE_10` }, + { name = 'scope_11', label = "SCOPE 11", hash = `COMPONENT_M110_SCOPE_11` }, + + { name = 'grip_01', label = "GRIP 1", hash = `COMPONENT_M110_GRIP_01` }, + { name = 'grip_02', label = "GRIP 2", hash = `COMPONENT_M110_GRIP_02` }, + { name = 'grip_03', label = "GRIP 3", hash = `COMPONENT_M110_GRIP_03` }, + { name = 'grip_04', label = "GRIP 4", hash = `COMPONENT_M110_GRIP_04` }, + { name = 'grip_05', label = "GRIP 5", hash = `COMPONENT_M110_GRIP_05` }, + { name = 'grip_06', label = "GRIP 6", hash = `COMPONENT_M110_GRIP_06` }, + + { name = 'cover_01', label = "COVER 1", hash = `COMPONENT_M110_COVER_01` }, + { name = 'cover_02', label = "COVER 2", hash = `COMPONENT_M110_COVER_02` }, + + { name = 'bipod_01', label = "BIPOD 1", hash = `COMPONENT_M110_BIPOD_01` }, + { name = 'bipod_02', label = "BIPOD 2", hash = `COMPONENT_M110_BIPOD_02` }, + + { name = 'clip_01', label = "CLIP 01", hash = `COMPONENT_M110_CLIP_01` }, + { name = 'clip_02', label = "CLIP 02", hash = `COMPONENT_M110_CLIP_02` }, + { name = 'clip_03', label = "CLIP 03", hash = `COMPONENT_M110_CLIP_03` }, + { name = 'clip_04', label = "CLIP 04", hash = `COMPONENT_M110_CLIP_04` }, + { name = 'clip_05', label = "CLIP 05", hash = `COMPONENT_M110_CLIP_05` }, + { name = 'clip_06', label = "CLIP 06", hash = `COMPONENT_M110_CLIP_06` }, + { name = 'clip_07', label = "CLIP 07", hash = `COMPONENT_M110_CLIP_07` }, + { name = 'clip_08', label = "CLIP 08", hash = `COMPONENT_M110_CLIP_08` }, + { name = 'clip_09', label = "CLIP 09", hash = `COMPONENT_M110_CLIP_09` }, + { name = 'clip_10', label = "CLIP 10", hash = `COMPONENT_M110_CLIP_10` }, + + { name = 'supp_01', label = "SUPP 1", hash = `COMPONENT_M110_SUPP_01` }, + { name = 'supp_02', label = "SUPP 2", hash = `COMPONENT_M110_SUPP_02` }, + { name = 'supp_03', label = "SUPP 3", hash = `COMPONENT_M110_SUPP_03` }, + { name = 'supp_04', label = "SUPP 4", hash = `COMPONENT_M110_SUPP_04` }, + { name = 'supp_05', label = "SUPP 5", hash = `COMPONENT_M110_SUPP_05` }, + { name = 'supp_06', label = "SUPP 6", hash = `COMPONENT_M110_SUPP_06` }, + { name = 'supp_07', label = "SUPP 7", hash = `COMPONENT_M110_SUPP_07` }, + + { name = 'stock_01', label = "STOCK 1", hash = `COMPONENT_M110_STOCK_01` }, + { name = 'stock_02', label = "STOCK 2", hash = `COMPONENT_M110_STOCK_02` }, + { name = 'stock_03', label = "STOCK 3", hash = `COMPONENT_M110_STOCK_03` }, + { name = 'stock_04', label = "STOCK 4", hash = `COMPONENT_M110_STOCK_04` }, + { name = 'stock_05', label = "STOCK 5", hash = `COMPONENT_M110_STOCK_05` }, + { name = 'stock_06', label = "STOCK 6", hash = `COMPONENT_M110_STOCK_06` }, + { name = 'stock_07', label = "STOCK 7", hash = `COMPONENT_M110_STOCK_07` }, + { name = 'stock_08', label = "STOCK 8", hash = `COMPONENT_M110_STOCK_08` }, + { name = 'stock_09', label = "STOCK 9", hash = `COMPONENT_M110_STOCK_09` }, + + + { name = 'flash_01', label = "FLASH 1", hash = `COMPONENT_M110_FLSH_01` }, + { name = 'flash_02', label = "FLASH 2", hash = `COMPONENT_M110_FLSH_02` }, + { name = 'flash_03', label = "FLASH 3", hash = `COMPONENT_M110_FLSH_03` }, + { name = 'flash_04', label = "FLASH 4", hash = `COMPONENT_M110_FLSH_04` }, + { name = 'flash_05', label = "FLASH 5", hash = `COMPONENT_M110_FLSH_05` }, + { name = 'flash_06', label = "FLASH 6", hash = `COMPONENT_M110_FLSH_06` }, + { name = 'flash_07', label = "FLASH 7", hash = `COMPONENT_M110_FLSH_07` }, + { name = 'flash_08', label = "FLASH 8", hash = `COMPONENT_M110_FLSH_08` }, + { name = 'flash_09', label = "FLASH 9", hash = `COMPONENT_M110_FLSH_09` }, + { name = 'flash_10', label = "FLASH 10", hash = `COMPONENT_M110_FLSH_10` }, + { name = 'flash_11', label = "FLASH 11", hash = `COMPONENT_M110_FLSH_11` }, + + } + }, + { + name = 'WEAPON_M110_2', + label = "M110_2", + components = { + { name = 'scope_01', label = "SCOPE 1", hash = `COMPONENT_M110_SCOPE_01` }, + { name = 'scope_02', label = "SCOPE 2", hash = `COMPONENT_M110_SCOPE_02` }, + { name = 'scope_03', label = "SCOPE 3", hash = `COMPONENT_M110_SCOPE_03` }, + { name = 'scope_04', label = "SCOPE 4", hash = `COMPONENT_M110_SCOPE_04` }, + { name = 'scope_05', label = "SCOPE 5", hash = `COMPONENT_M110_SCOPE_05` }, + { name = 'scope_06', label = "SCOPE 6", hash = `COMPONENT_M110_SCOPE_06` }, + { name = 'scope_07', label = "SCOPE 7", hash = `COMPONENT_M110_SCOPE_07` }, + { name = 'scope_08', label = "SCOPE 8", hash = `COMPONENT_M110_SCOPE_08` }, + { name = 'scope_09', label = "SCOPE 9", hash = `COMPONENT_M110_SCOPE_09` }, + { name = 'scope_10', label = "SCOPE 10", hash = `COMPONENT_M110_SCOPE_10` }, + { name = 'scope_11', label = "SCOPE 11", hash = `COMPONENT_M110_SCOPE_11` }, + + { name = 'grip_01', label = "GRIP 1", hash = `COMPONENT_M110_GRIP_01` }, + { name = 'grip_02', label = "GRIP 2", hash = `COMPONENT_M110_GRIP_02` }, + { name = 'grip_03', label = "GRIP 3", hash = `COMPONENT_M110_GRIP_03` }, + { name = 'grip_04', label = "GRIP 4", hash = `COMPONENT_M110_GRIP_04` }, + { name = 'grip_05', label = "GRIP 5", hash = `COMPONENT_M110_GRIP_05` }, + { name = 'grip_06', label = "GRIP 6", hash = `COMPONENT_M110_GRIP_06` }, + + { name = 'cover_01', label = "COVER 1", hash = `COMPONENT_M110_COVER_01` }, + { name = 'cover_02', label = "COVER 2", hash = `COMPONENT_M110_COVER_02` }, + + { name = 'bipod_01', label = "BIPOD 1", hash = `COMPONENT_M110_BIPOD_01` }, + { name = 'bipod_02', label = "BIPOD 2", hash = `COMPONENT_M110_BIPOD_02` }, + + { name = 'clip_01', label = "CLIP 01", hash = `COMPONENT_M110_CLIP_01` }, + { name = 'clip_02', label = "CLIP 02", hash = `COMPONENT_M110_CLIP_02` }, + { name = 'clip_03', label = "CLIP 03", hash = `COMPONENT_M110_CLIP_03` }, + { name = 'clip_04', label = "CLIP 04", hash = `COMPONENT_M110_CLIP_04` }, + { name = 'clip_05', label = "CLIP 05", hash = `COMPONENT_M110_CLIP_05` }, + { name = 'clip_06', label = "CLIP 06", hash = `COMPONENT_M110_CLIP_06` }, + { name = 'clip_07', label = "CLIP 07", hash = `COMPONENT_M110_CLIP_07` }, + { name = 'clip_08', label = "CLIP 08", hash = `COMPONENT_M110_CLIP_08` }, + { name = 'clip_09', label = "CLIP 09", hash = `COMPONENT_M110_CLIP_09` }, + { name = 'clip_10', label = "CLIP 10", hash = `COMPONENT_M110_CLIP_10` }, + + { name = 'supp_01', label = "SUPP 1", hash = `COMPONENT_M110_SUPP_01` }, + { name = 'supp_02', label = "SUPP 2", hash = `COMPONENT_M110_SUPP_02` }, + { name = 'supp_03', label = "SUPP 3", hash = `COMPONENT_M110_SUPP_03` }, + { name = 'supp_04', label = "SUPP 4", hash = `COMPONENT_M110_SUPP_04` }, + { name = 'supp_05', label = "SUPP 5", hash = `COMPONENT_M110_SUPP_05` }, + { name = 'supp_06', label = "SUPP 6", hash = `COMPONENT_M110_SUPP_06` }, + { name = 'supp_07', label = "SUPP 7", hash = `COMPONENT_M110_SUPP_07` }, + + { name = 'stock_01', label = "STOCK 1", hash = `COMPONENT_M110_STOCK_01` }, + { name = 'stock_02', label = "STOCK 2", hash = `COMPONENT_M110_STOCK_02` }, + { name = 'stock_03', label = "STOCK 3", hash = `COMPONENT_M110_STOCK_03` }, + { name = 'stock_04', label = "STOCK 4", hash = `COMPONENT_M110_STOCK_04` }, + { name = 'stock_05', label = "STOCK 5", hash = `COMPONENT_M110_STOCK_05` }, + { name = 'stock_06', label = "STOCK 6", hash = `COMPONENT_M110_STOCK_06` }, + { name = 'stock_07', label = "STOCK 7", hash = `COMPONENT_M110_STOCK_07` }, + { name = 'stock_08', label = "STOCK 8", hash = `COMPONENT_M110_STOCK_08` }, + { name = 'stock_09', label = "STOCK 9", hash = `COMPONENT_M110_STOCK_09` }, + + + { name = 'flash_01', label = "FLASH 1", hash = `COMPONENT_M110_FLSH_01` }, + { name = 'flash_02', label = "FLASH 2", hash = `COMPONENT_M110_FLSH_02` }, + { name = 'flash_03', label = "FLASH 3", hash = `COMPONENT_M110_FLSH_03` }, + { name = 'flash_04', label = "FLASH 4", hash = `COMPONENT_M110_FLSH_04` }, + { name = 'flash_05', label = "FLASH 5", hash = `COMPONENT_M110_FLSH_05` }, + { name = 'flash_06', label = "FLASH 6", hash = `COMPONENT_M110_FLSH_06` }, + { name = 'flash_07', label = "FLASH 7", hash = `COMPONENT_M110_FLSH_07` }, + { name = 'flash_08', label = "FLASH 8", hash = `COMPONENT_M110_FLSH_08` }, + { name = 'flash_09', label = "FLASH 9", hash = `COMPONENT_M110_FLSH_09` }, + { name = 'flash_10', label = "FLASH 10", hash = `COMPONENT_M110_FLSH_10` }, + { name = 'flash_11', label = "FLASH 11", hash = `COMPONENT_M110_FLSH_11` }, + + } + }, -- Handguns { name = 'WEAPON_APPISTOL', @@ -784,6 +1265,20 @@ Config.Weapons = { { name = 'luxary_finish', label = TranslateCap('component_luxary_finish'), hash = `COMPONENT_SPECIALCARBINE_VARMOD_LOWRIDER` } } }, + { + name = 'WEAPON_HEAVYRIFLE', + label = "Heavy Rifle", + ammo = {label = TranslateCap('ammo_rounds'), hash = `AMMO_RIFLE`}, + tints = Config.DefaultWeaponTints, + components = { + {name = 'clip_default', label = TranslateCap('component_clip_default'), hash = `COMPONENT_HEAVYRIFLE_CLIP_01`}, + {name = 'clip_extended', label = TranslateCap('component_clip_extended'), hash = `COMPONENT_HEAVYRIFLE_CLIP_02`}, + {name = 'ironsights', label = TranslateCap('component_ironsights'), hash = `COMPONENT_HEAVYRIFLE_SIGHT_01`}, + {name = 'scope', label = TranslateCap('component_scope'), hash = `COMPONENT_AT_SCOPE_SMALL`}, + {name = 'flashlight', label = TranslateCap('component_flashlight'), hash = `COMPONENT_AT_AR_FLSH`}, + {name = 'suppressor', label = TranslateCap('component_suppressor'), hash = `COMPONENT_AT_AR_SUPP`} + } + }, { name = 'WEAPON_SPECIALCARBINE_MK2', label = TranslateCap('weapon_specialcarbine_mk2'), @@ -824,21 +1319,6 @@ Config.Weapons = { { name = 'camo_finish11', label = TranslateCap('component_camo_finish11'), hash = `COMPONENT_SPECIALCARBINE_MK2_CAMO_IND_01` } } }, - { - name = 'WEAPON_HEAVYRIFLE', - label = TranslateCap('weapon_heavyrifle'), - ammo = {label = TranslateCap('ammo_rounds'), hash = `AMMO_RIFLE`}, - tints = Config.DefaultWeaponTints, - components = { - {name = 'clip_default', label = TranslateCap('component_clip_default'), hash = `COMPONENT_HEAVYRIFLE_CLIP_01`}, - {name = 'clip_extended', label = TranslateCap('component_clip_extended'), hash = `COMPONENT_HEAVYRIFLE_CLIP_02`}, - {name = 'scope_holo', label = TranslateCap('component_scope_holo'), hash = `COMPONENT_HEAVYRIFLE_SIGHT_01` }, - {name = 'scope', label = TranslateCap('component_scope'), hash = `COMPONENT_AT_SCOPE_MEDIUM` }, - {name = 'flashlight', label = TranslateCap('component_flashlight'), hash = `COMPONENT_AT_AR_FLSH`}, - {name = 'suppressor', label = TranslateCap('component_suppressor'), hash = `COMPONENT_AT_AR_SUPP`}, - {name = 'grip', label = TranslateCap('component_grip'), hash = `COMPONENT_AT_AR_AFGRIP`} - } - }, -- Sniper { name = 'WEAPON_HEAVYSNIPER', @@ -1021,4 +1501,4 @@ Config.Weapons = { { name = 'clip_default', label = TranslateCap('component_clip_default'), hash = `COMPONENT_RAILGUNXM3_CLIP_01` }, }, }, -} \ No newline at end of file +} diff --git a/[core]/es_extended/fxmanifest.lua b/[core]/es_extended/fxmanifest.lua index 8c7306869..e947f321a 100644 --- a/[core]/es_extended/fxmanifest.lua +++ b/[core]/es_extended/fxmanifest.lua @@ -1,9 +1,11 @@ -fx_version 'cerulean' + + +fx_version 'adamant' game 'gta5' description 'ES Extended' lua54 'yes' -version '1.10.2' +version '1.10.1' shared_scripts { 'locale.lua', @@ -76,3 +78,7 @@ dependencies { 'oxmysql', 'spawnmanager', } + +provide { + "extendedmode" +} \ No newline at end of file diff --git a/[core]/es_extended/locales/br.lua b/[core]/es_extended/locales/br.lua new file mode 100644 index 000000000..a19f78be4 --- /dev/null +++ b/[core]/es_extended/locales/br.lua @@ -0,0 +1,228 @@ +Locales['br'] = { + -- Inventory + ['inventory'] = 'inventário %s / %s', + ['use'] = 'usar', + ['give'] = 'dar', + ['remove'] = 'remover', + ['return'] = 'voltar', + ['give_to'] = 'dar para', + ['amount'] = 'quantidade', + ['giveammo'] = 'dar munição', + ['amountammo'] = 'quantidade de munição', + ['noammo'] = 'voce não tem todas essas munições!', + ['gave_item'] = 'voce deu %sx %s para %s', + ['received_item'] = 'voce recebeu %sx %s de %s', + ['gave_weapon'] = 'você deu %s para %s', + ['gave_weapon_ammo'] = 'você deu ~o~%sx %s para %s de %s', + ['gave_weapon_withammo'] = 'você deu %s com ~o~%sx %s para %s', + ['gave_weapon_hasalready'] = '%s já tem um(a) %s', + ['gave_weapon_noweapon'] = 'não tem essa arma %s', + ['received_weapon'] = 'você recebeu %s de %s', + ['received_weapon_ammo'] = 'você recebeu ~o~%sx %s para a sua(o seu) %s de %s', + ['received_weapon_withammo'] = 'você recebeu %s com ~o~%sx %s de %s', + ['received_weapon_hasalready'] = '%s tentou lhe dar uma %s, mas você já tem um(a)', + ['received_weapon_noweapon'] = '%s tentou lhe dar munição para %s, mas você não tem um(a)', + ['gave_account_money'] = 'voce deu $%s (%s) para %s', + ['received_account_money'] = 'voce recebeu $%s (%s) de %s', + ['amount_invalid'] = 'quantidade inválida', + ['players_nearby'] = 'nenhum cidadão por perto', + ['ex_inv_lim'] = 'ação não e possivel, excedendo o limite de estoque para %s', + ['imp_invalid_quantity'] = 'ação impossível, quantidade inválida', + ['imp_invalid_amount'] = 'ação impossível, valor invalido', + ['threw_standard'] = 'você jogou %sx %s', + ['threw_account'] = 'você jogou $%s %s', + ['threw_weapon'] = 'você jogou %s', + ['threw_weapon_ammo'] = 'você jogou %s com ~o~%sx %s', + ['threw_weapon_already'] = 'você já esta com essa arma', + ['threw_cannot_pickup'] = 'você não pode pegar porque seu inventário está cheio!', + ['threw_pickup_prompt'] = 'pressione E para pegar', + + -- Key mapping + ['keymap_showinventory'] = 'exibir inventario', + + -- Salary related + ['received_salary'] = 'voce recebeu seu salário: $%s ', + ['received_help'] = 'voce recebeu seu cheque de bem-estar: $%s ', + ['company_nomoney'] = 'a empresa em que voce esta empregado esta muito pobre para pagar seu salário', + ['received_paycheck'] = 'recebeu dinheiro', + ['bank'] = 'banco', + ['account_bank'] = 'banco', + ['account_black_money'] = 'dinheiro sujo', + ['account_money'] = 'dinheiro', + + ['act_imp'] = 'ação impossível', + ['in_vehicle'] = 'voce não pode dar nada para alguem no veículo', + + -- Commands + ['command_car'] = 'spawn um carro', + ['command_car_car'] = 'nome do carro', + ['command_cardel'] = 'excluir veículo', + ['command_cardel_radius'] = 'optional, delete every vehicle within the specified radius', + ['command_clear'] = 'limpar o chat', + ['command_clearall'] = 'limpar o chat para todos', + ['command_clearinventory'] = 'remover todos os itens do inventário', + ['command_clearloadout'] = 'remova todas as armas do carregamento', + ['command_giveaccountmoney'] = 'dar dinheiro da conta', + ['command_giveaccountmoney_account'] = 'conta', + ['command_giveaccountmoney_amount'] = 'amount', + ['command_giveaccountmoney_invalid'] = 'conta inválida', + ['command_giveitem'] = 'dar item', + ['command_giveitem_item'] = 'item', + ['command_giveitem_count'] = 'count', + ['command_giveweapon'] = 'dar arma', + ['command_giveweapon_weapon'] = 'arma', + ['command_giveweapon_ammo'] = 'ammo count', + ['command_giveweapon_hasalready'] = 'player already has that weapon', + ['command_giveweaponcomponent'] = 'give weapon component', + ['command_giveweaponcomponent_component'] = 'component name', + ['command_giveweaponcomponent_invalid'] = 'invalid weapon component', + ['command_giveweaponcomponent_hasalready'] = 'player already has that weapon component', + ['command_giveweaponcomponent_missingweapon'] = 'player does not have that weapon', + ['command_save'] = 'save a player to database', + ['command_saveall'] = 'save all players to database', + ['command_setaccountmoney'] = 'set account money for a player', + ['command_setaccountmoney_amount'] = 'amount of money to set', + ['command_setcoords'] = 'teleport to coordinates', + ['command_setcoords_x'] = 'x axis', + ['command_setcoords_y'] = 'y axis', + ['command_setcoords_z'] = 'z axis', + ['command_setjob'] = 'atribuir um trabalho a um usuario', + ['command_setjob_job'] = 'o trabalho que voce deseja atribuir', + ['command_setjob_grade'] = 'o nivel de emprego', + ['command_setjob_invalid'] = 'the job, grade or both are invalid', + ['command_setgroup'] = 'set player group', + ['command_setgroup_group'] = 'group name', + ['commanderror_argumentmismatch'] = 'argument count mismatch (passed %s, wanted %s)', + ['commanderror_argumentmismatch_number'] = 'argument #%s type mismatch (passed string, wanted number)', + ['commanderror_invaliditem'] = 'item invalido', + ['commanderror_invalidweapon'] = 'invalid weapon', + ['commanderror_console'] = 'that command can not be run from console', + ['commanderror_invalidcommand'] = '/%s is not an valid command!', + ['commanderror_invalidplayerid'] = 'there is no player online matching that server id', + ['commandgeneric_playerid'] = 'o ID do jogador', + ['command_giveammo_noweapon_found'] = '%s does not have that weapon', + ['command_giveammo_weapon'] = 'Weapon name', + ['command_giveammo_ammo'] = 'Ammo Quantity', + + -- Locale settings + ['locale_digit_grouping_symbol'] = ' ', + ['locale_currency'] = 'R$%s', + + -- Weapons + ['weapon_knife'] = 'faca', + ['weapon_nightstick'] = 'cacetete', + ['weapon_hammer'] = 'martelo', + ['weapon_bat'] = 'bastao', + ['weapon_golfclub'] = 'golf club', + ['weapon_crowbar'] = 'pe de cabra', + ['weapon_pistol'] = 'pistola', + ['weapon_combatpistol'] = 'pistola de combate', + ['weapon_appistol'] = 'ap pistola', + ['weapon_pistol50'] = 'pistola .50', + ['weapon_microsmg'] = 'micro smg', + ['weapon_smg'] = 'smg', + ['weapon_assaultsmg'] = 'smg de assalto', + ['weapon_assaultrifle'] = 'rifle de assalto', + ['weapon_carbinerifle'] = 'carabina rifle', + ['weapon_advancedrifle'] = 'rifle avançado', + ['weapon_mg'] = 'mg', + ['weapon_combatmg'] = 'combate mg', + ['weapon_pumpshotgun'] = 'espingarda', + ['weapon_sawnoffshotgun'] = 'espingarda serrada', + ['weapon_assaultshotgun'] = 'espingarda de assalto', + ['weapon_bullpupshotgun'] = 'espingarda de bullpup', + ['weapon_stungun'] = 'arma de choque', + ['weapon_sniperrifle'] = 'sniper rifle', + ['weapon_heavysniper'] = 'heavy sniper', + ['weapon_grenadelauncher'] = 'lançador de granada', + ['weapon_rpg'] = 'lançador de foguetes', + ['weapon_minigun'] = 'minigun', + ['weapon_grenade'] = 'granada', + ['weapon_stickybomb'] = 'bomba pegajosa', + ['weapon_smokegrenade'] = 'granada de fumaça', + ['weapon_bzgas'] = 'bz gas', + ['weapon_molotov'] = 'molotov', + ['weapon_fireextinguisher'] = 'extintor', + ['weapon_petrolcan'] = 'galao de combustivel', + ['weapon_ball'] = 'bola', + ['weapon_snspistol'] = 'sns pistol', + ['weapon_bottle'] = 'garrafa', + ['weapon_gusenberg'] = 'gusenberg sweeper', + ['weapon_specialcarbine'] = 'carabina especial', + ['weapon_heavypistol'] = 'heavy pistol', + ['weapon_bullpuprifle'] = 'bullpup rifle', + ['weapon_dagger'] = 'punhal', + ['weapon_vintagepistol'] = 'vintage pistol', + ['weapon_firework'] = 'fogos de artificio', + ['weapon_musket'] = 'mosquete', + ['weapon_heavyshotgun'] = 'heavy shotgun', + ['weapon_marksmanrifle'] = 'marksman rifle', + ['weapon_hominglauncher'] = 'homing launcher', + ['weapon_proxmine'] = 'mina de proximidade', + ['weapon_snowball'] = 'bola de neve', + ['weapon_flaregun'] = 'sinalizador', + ['weapon_combatpdw'] = 'combat pdw', + ['weapon_marksmanpistol'] = 'marksman pistol', + ['weapon_knuckle'] = 'soco ingles', + ['weapon_hatchet'] = 'machado', + ['weapon_railgun'] = 'railgun', + ['weapon_machete'] = 'facão', + ['weapon_machinepistol'] = 'machine pistol', + ['weapon_switchblade'] = 'canivete', + ['weapon_revolver'] = 'heavy revolver', + ['weapon_dbshotgun'] = 'espingarda de cano duplo', + ['weapon_compactrifle'] = 'compact rifle', + ['weapon_autoshotgun'] = 'auto shotgun', + ['weapon_battleaxe'] = 'battle axe', + ['weapon_compactlauncher'] = 'compact launcher', + ['weapon_minismg'] = 'mini smg', + ['weapon_pipebomb'] = 'bomba caseira', + ['weapon_poolcue'] = 'taco de sinuca', + ['weapon_wrench'] = 'chave de cano', + ['weapon_flashlight'] = 'laterna', + ['gadget_parachute'] = 'paraquedas', + ['weapon_flare'] = 'flare', + ['weapon_doubleaction'] = 'double-Action Revolver', + + -- Weapon Components + ['component_clip_default'] = 'aderência padrão', + ['component_clip_extended'] = 'aderência prolongada', + ['component_clip_drum'] = 'drum Magazine', + ['component_clip_box'] = 'box Magazine', + ['component_flashlight'] = 'lanterna', + ['component_scope'] = 'mira', + ['component_scope_advanced'] = 'mira avançada', + ['component_suppressor'] = 'supressor', + ['component_grip'] = 'grip', + ['component_luxary_finish'] = 'acabamento de arma de luxo', + + -- Weapon Ammo + ['ammo_rounds'] = 'round(s)', + ['ammo_shells'] = 'shell(s)', + ['ammo_charge'] = 'charge', + ['ammo_petrol'] = 'gallons of fuel', + ['ammo_firework'] = 'firework(s)', + ['ammo_rockets'] = 'rocket(s)', + ['ammo_grenadelauncher'] = 'grenade(s)', + ['ammo_grenade'] = 'grenade(s)', + ['ammo_stickybomb'] = 'bomb(s)', + ['ammo_pipebomb'] = 'bomb(s)', + ['ammo_smokebomb'] = 'bomb(s)', + ['ammo_molotov'] = 'cocktail(s)', + ['ammo_proxmine'] = 'mine(s)', + ['ammo_bzgas'] = 'can(s)', + ['ammo_ball'] = 'ball(s)', + ['ammo_snowball'] = 'snowball(s)', + ['ammo_flare'] = 'flare(s)', + ['ammo_flaregun'] = 'flare(s)', + + -- Weapon Tints + ['tint_default'] = 'default skin', + ['tint_green'] = 'green skin', + ['tint_gold'] = 'gold skin', + ['tint_pink'] = 'pink skin', + ['tint_army'] = 'army skin', + ['tint_lspd'] = 'blue skin', + ['tint_orange'] = 'orange skin', + ['tint_platinum'] = 'platinum skin', +} diff --git a/[core]/es_extended/locales/cs.lua b/[core]/es_extended/locales/cs.lua index e658fc612..71bd3ea53 100644 --- a/[core]/es_extended/locales/cs.lua +++ b/[core]/es_extended/locales/cs.lua @@ -52,7 +52,6 @@ Locales["cs"] = { ["act_imp"] = "Nelze provést", ["in_vehicle"] = "Nelze provést, hráč je v autě", - ["not_in_vehicle"] = "Cannot Perform Action, Player isn't in a vehicle", -- Commands ['command_bring'] = 'Přivolat si hráče k sobě', @@ -60,9 +59,6 @@ Locales["cs"] = { ['command_car_car'] = 'Zadej jméno vozidla nebo spawnname', ['command_cardel'] = 'Odstranění vozidla v okolí', ['command_cardel_radius'] = 'Odstranění vozidla v určeném dosahu', - ['command_repair'] = 'Repair your vehicle', - ['command_repair_success'] = 'Successfully repaired vehicle', - ['command_repair_success_target'] = 'An admin repaired your vehicle', ['command_clear'] = 'Vymazat text v chatu', ['command_clearall'] = 'Vymazat chet pro všechny hráče', ['command_clearinventory'] = 'Vymazat všechny věci z invetáře hráče', @@ -198,7 +194,6 @@ Locales["cs"] = { ["weapon_militaryrifle"] = "Military Rifle", ["weapon_specialcarbine"] = "Special Carbine", ["weapon_specialcarbine_mk2"] = "Special Carbine MK2", - ["weapon_heavyrifle"] = "Heavy Rifle", -- Not Translated -- Sniper ["weapon_heavysniper"] = "Heavy Sniper", diff --git a/[core]/es_extended/locales/da.lua b/[core]/es_extended/locales/da.lua new file mode 100644 index 000000000..518778bf9 --- /dev/null +++ b/[core]/es_extended/locales/da.lua @@ -0,0 +1,372 @@ +Locales["da"] = { + -- Inventory + ["inventory"] = "Inventar ( Vægt %s / %s )", + ["use"] = "Brug", + ["give"] = "Giv", + ["remove"] = "Smid", + ["return"] = "Tilbage", + ["give_to"] = "Giv til", + ["amount"] = "Beløb", + ["giveammo"] = "Giv ammunition", + ["amountammo"] = "Ammunition beløb", + ["noammo"] = "Ikke nok!", + ["gave_item"] = "Giver %sx %s til %s", + ["received_item"] = "Modtog %sx %s fra %s", + ["gave_weapon"] = "Giver %s til %s", + ["gave_weapon_ammo"] = "Giver ~o~%sx %s for %s til %s", + ["gave_weapon_withammo"] = "Giver %s med ~o~%sx %s til %s", + ["gave_weapon_hasalready"] = "%s har allerede en %s", + ["gave_weapon_noweapon"] = "%s har ikke det våben", + ["received_weapon"] = "Modtog %s fra %s", + ["received_weapon_ammo"] = "Modtog ~o~%sx %s for din %s fra %s", + ["received_weapon_withammo"] = "Modtog %s med ~o~%sx %s fra %s", + ["received_weapon_hasalready"] = "%s har forsøgt at give dig en %s, men du allerede dette våben", + ["received_weapon_noweapon"] = "%s har forsøgt at give dig ammunition for en %s, men du har ikke dette våben", + ["gave_account_money"] = "Giver %s kr. (%s) til %s", + ["received_account_money"] = "Modtog %s kr. (%s) fra %s", + ["amount_invalid"] = "Ugyldig mængde", + ["players_nearby"] = "Ingen spillere i nærheden", + ["ex_inv_lim"] = "Kan ikke udføre handling, overskrider maks. vægt på %s", + ["imp_invalid_quantity"] = "Handlingen kan ikke udføres, mængden er ugyldig", + ["imp_invalid_amount"] = "Handlingen kan ikke udføres, beløbet er ugyldigt", + ["threw_standard"] = "Smider %sx %s", + ["threw_account"] = "Smider %s kr. %s", + ["threw_weapon"] = "Smider %s", + ["threw_weapon_ammo"] = "Smider %s med ~o~%sx %s", + ["threw_weapon_already"] = "Du har allerede dette våben", + ["threw_cannot_pickup"] = "Inventory er fyldt, Kan ikke tages!", + ["threw_pickup_prompt"] = "Tryk på E for at tage genstand", + + -- Key mapping + ["keymap_showinventory"] = "Vis Inventory", + + -- Salary related + ["received_salary"] = "Du er blevet betalt: %s kr.", + ["received_help"] = "Du har fået udbetalt din velfærdscheck: %s kr.", + ["company_nomoney"] = "den virksomhed, du er ansat i, er for fattig til at udbetale din løn", + ["received_paycheck"] = "modtaget lønseddel", + ["bank"] = "Maze Bank", + ["account_bank"] = "Bank", + ["account_black_money"] = "Beskidte penge", + ["account_money"] = "Penge", + + ["act_imp"] = "Kan ikke udføre handling", + ["in_vehicle"] = "Kan ikke udføre handling, spilleren er i et køretøj", + + -- Commands + ['command_bring'] = 'Tag en spiller til dig', + ['command_car'] = 'Spawn et køretøj', + ['command_car_car'] = 'Køretøjsmodel eller hash', + ['command_cardel'] = 'Fjern køretøjer i nærheden', + ['command_cardel_radius'] = 'Fjerner alle køretøjer inden for den specificerede radius', + ['command_clear'] = 'Ryd chatten', + ['command_clearall'] = 'Ryd chatten for alle spillere', + ['command_clearinventory'] = 'Fjern alle elementer fra spillernes inventar', + ['command_clearloadout'] = 'Fjern alle våben fra Players Loadout', + ['command_freeze'] = 'Frys en spiller', + ['command_unfreeze'] = 'Frigør en spiller', + ['command_giveaccountmoney'] = 'Giv penge til en bestemt konto', + ['command_giveaccountmoney_account'] = 'Konto at tilføje til', + ['command_giveaccountmoney_amount'] = 'Beløb at tilføje', + ['command_giveaccountmoney_invalid'] = 'Kontonavn ugyldigt', + ['command_giveitem'] = 'Giv spilleren en genstand', + ['command_giveitem_item'] = 'Genstands navn', + ['command_giveitem_count'] = 'Antal', + ['command_giveweapon'] = 'Giv spilleren et våben', + ['command_giveweapon_weapon'] = 'Navn på våben', + ['command_giveweapon_ammo'] = 'Ammunitions mængde', + ['command_giveweapon_hasalready'] = 'Spilleren har allerede dette våben', + ['command_giveweaponcomponent'] = 'Giv en våbenkomponent til spilleren', + ['command_giveweaponcomponent_component'] = 'Komponent navn', + ['command_giveweaponcomponent_invalid'] = 'Ugyldig våben-komponent', + ['command_giveweaponcomponent_hasalready'] = 'Spilleren har allerede denne våben-komponent', + ['command_giveweaponcomponent_missingweapon'] = 'Spilleren har ikke dette våben', + ['command_goto'] = 'Teleporter dig selv til en spiller', + ['command_kill'] = 'Dræb en spiller', + ['command_save'] = 'Force save en spillers data', + ['command_saveall'] = 'Force save alle spillers data', + ['command_setaccountmoney'] = 'Indstil pengene på en bestemt konto', + ['command_setaccountmoney_amount'] = 'Beløb', + ['command_setcoords'] = 'Teleporter til specificerede koordinater', + ['command_setcoords_x'] = 'X værdi', + ['command_setcoords_y'] = 'Y værdi', + ['command_setcoords_z'] = 'Z værdi', + ['command_setjob'] = 'Sæt en spillers job', + ['command_setjob_job'] = 'Navn', + ['command_setjob_grade'] = 'Job karakter', + ['command_setjob_invalid'] = 'jobbet, karakteren eller begge dele er ugyldige', + ['command_setgroup'] = 'Indstil en spillers tilladelsesgruppe', + ['command_setgroup_group'] = 'Navn på gruppe', + ['commanderror_argumentmismatch'] = 'Antal ugyldige argumenter (bestået %s, ønsket %s)', + ['commanderror_argumentmismatch_number'] = 'Ugyldigt argument #%s datatype (bestået streng, ønsket nummer)', + ['commanderror_argumentmismatch_string'] = 'Invalid Argument #%s data type (passed number, wanted string)', + ['commanderror_invaliditem'] = 'Ugyldig genstand', + ['commanderror_invalidweapon'] = 'Ugyldigt våben', + ['commanderror_console'] = 'Kommandoen kan ikke udføres fra konsollen', + ['commanderror_invalidcommand'] = 'Ugyldig kommando - /%s', + ['commanderror_invalidplayerid'] = 'Den angivne spiller er ikke online', + ['commandgeneric_playerid'] = 'Spillerens server-id', + ['command_giveammo_noweapon_found'] = '%s har ikke det våben', + ['command_giveammo_weapon'] = 'Våben navn', + ['command_giveammo_ammo'] = 'Ammunitions mængde', + ['tpm_nowaypoint'] = 'Ingen waypoint indstillet.', + ['tpm_success'] = 'Teleporteret med succes', + + ['noclip_message'] = 'Noclip er blevet %s', + ['enabled'] = '~g~aktiveret~s~', + ['disabled'] = '~r~deaktiveret~s~', + + -- Locale settings + ["locale_digit_grouping_symbol"] = ",", + ["locale_currency"] = "%s DKK", + + -- Weapons + + -- Melee + ["weapon_dagger"] = "Dolk", + ["weapon_bat"] = "Bat", + ["weapon_battleaxe"] = "Kampøkse", + ["weapon_bottle"] = "Flaske", + ["weapon_crowbar"] = "Koben", + ["weapon_flashlight"] = "Lommelygte", + ["weapon_golfclub"] = "Golf Club", + ["weapon_hammer"] = "Hammer", + ["weapon_hatchet"] = "Økse", + ["weapon_knife"] = "Kniv", + ["weapon_knuckle"] = "Knuckledusters", + ["weapon_machete"] = "Machete", + ["weapon_nightstick"] = "Nightstick", + ["weapon_wrench"] = "Pipe Wrench", + ["weapon_poolcue"] = "Pool Cue", + ["weapon_stone_hatchet"] = "Stone Hatchet", + ["weapon_switchblade"] = "Switchblade", + + -- Handguns + ["weapon_appistol"] = "AP Pistol", + ["weapon_ceramicpistol"] = "Ceramic Pistol", + ["weapon_combatpistol"] = "Combat Pistol", + ["weapon_doubleaction"] = "Double-Action Revolver", + ["weapon_navyrevolver"] = "Navy Revolver", + ["weapon_flaregun"] = "Flaregun", + ["weapon_gadgetpistol"] = "Gadget Pistol", + ["weapon_heavypistol"] = "Tung Pistol", + ["weapon_revolver"] = "Tung Revolver", + ["weapon_revolver_mk2"] = "Heavy Revolver MK2", + ["weapon_marksmanpistol"] = "Marksman Pistol", + ["weapon_pistol"] = "Pistol", + ["weapon_pistol_mk2"] = "Pistol MK2", + ["weapon_pistol50"] = "Pistol .50", + ["weapon_snspistol"] = "SNS Pistol", + ["weapon_snspistol_mk2"] = "SNS Pistol MK2", + ["weapon_stungun"] = "Taser", + ["weapon_raypistol"] = "Up-N-Atomizer", + ["weapon_vintagepistol"] = "Vintage Pistol", + + -- Shotguns + ["weapon_assaultshotgun"] = "Assault Shotgun", + ["weapon_autoshotgun"] = "Auto Shotgun", + ["weapon_bullpupshotgun"] = "Bullpup Shotgun", + ["weapon_combatshotgun"] = "Kamp Haglgevær", + ["weapon_dbshotgun"] = "Dobbeltløbet gevær", + ["weapon_heavyshotgun"] = "Tungt haglgevær", + ["weapon_musket"] = "Musket", + ["weapon_pumpshotgun"] = "Pumpe haglgevær", + ["weapon_pumpshotgun_mk2"] = "Pumpe haglgevær MK2", + ["weapon_sawnoffshotgun"] = "Oversavet haglgevær", + + -- SMG & LMG + ["weapon_assaultsmg"] = "Assault SMG", + ["weapon_combatmg"] = "Combat MG", + ["weapon_combatmg_mk2"] = "Combat MG MK2", + ["weapon_combatpdw"] = "Combat PDW", + ["weapon_gusenberg"] = "Gusenberg Sweeper", + ["weapon_machinepistol"] = "Maskinpistol", + ["weapon_mg"] = "MG", + ["weapon_microsmg"] = "Micro SMG", + ["weapon_minismg"] = "Mini SMG", + ["weapon_smg"] = "SMG", + ["weapon_smg_mk2"] = "SMG MK2", + ["weapon_raycarbine"] = "Unholy Hellbringer", + + -- Rifles + ["weapon_advancedrifle"] = "Advanced Rifle", + ["weapon_assaultrifle"] = "Assault Rifle", + ["weapon_assaultrifle_mk2"] = "Assault Rifle MK2", + ["weapon_bullpuprifle"] = "Bullpup Rifle", + ["weapon_bullpuprifle_mk2"] = "Bullpup Rifle MK2", + ["weapon_carbinerifle"] = "Carbine Rifle", + ["weapon_carbinerifle_mk2"] = "Carbine Rifle MK2", + ["weapon_compactrifle"] = "Compact Rifle", + ["weapon_militaryrifle"] = "Militær riffel", + ["weapon_specialcarbine"] = "Special Carbine", + ["weapon_specialcarbine_mk2"] = "Special Carbine MK2", + + -- Sniper + ["weapon_heavysniper"] = "Tung snigskytte", + ["weapon_heavysniper_mk2"] = "Tung snigskytte MK2", + ["weapon_marksmanrifle"] = "Skytterifle", + ["weapon_marksmanrifle_mk2"] = "Skytterifle MK2", + ["weapon_sniperrifle"] = "Snigskytteriffel", + + -- Heavy / Launchers + ["weapon_compactlauncher"] = "Compact Launcher", + ["weapon_firework"] = "Firework Launcher", + ["weapon_grenadelauncher"] = "Grenade Launcher", + ["weapon_hominglauncher"] = "Homing Launcher", + ["weapon_minigun"] = "Minigun", + ["weapon_railgun"] = "Railgun", + ["weapon_rpg"] = "Rocket Launcher", + ["weapon_rayminigun"] = "Widowmaker", + + -- Criminal Enterprises DLC + ["weapon_metaldetector"] = "Metal Detector", + ["weapon_precisionrifle"] = "Precision Rifle", + ["weapon_tactilerifle"] = "Service Carbine", + + -- 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 + + -- Thrown + ["weapon_ball"] = "Baseball", + ["weapon_bzgas"] = "BZ Gas", + ["weapon_flare"] = "Flare", + ["weapon_grenade"] = "Granat", + ["weapon_petrolcan"] = "Benzindunk", + ["weapon_hazardcan"] = "Farlig Benzindunk", + ["weapon_molotov"] = "Molotov Cocktail", + ["weapon_proxmine"] = "Proximity Mine", + ["weapon_pipebomb"] = "Pipe Bomb", + ["weapon_snowball"] = "Snebold", + ["weapon_stickybomb"] = "Sticky Bomb", + ["weapon_smokegrenade"] = "Tåregas", + + -- Special + ["weapon_fireextinguisher"] = "Brandslukker", + ["weapon_digiscanner"] = "Digital scanner", + ["weapon_garbagebag"] = "Skraldepose", + ["weapon_handcuffs"] = "Håndjern", + ["gadget_nightvision"] = "Night Vision", + ["gadget_parachute"] = "faldskærm", + + -- Weapon Components + ["component_knuckle_base"] = "base Model", + ["component_knuckle_pimp"] = "the Pimp", + ["component_knuckle_ballas"] = "the Ballas", + ["component_knuckle_dollar"] = "the Hustler", + ["component_knuckle_diamond"] = "the Rock", + ["component_knuckle_hate"] = "the Hater", + ["component_knuckle_love"] = "the Lover", + ["component_knuckle_player"] = "the Player", + ["component_knuckle_king"] = "the King", + ["component_knuckle_vagos"] = "the Vagos", + + ["component_luxary_finish"] = "luxary Weapon Finish", + + ["component_handle_default"] = "standardhåndtag", + ["component_handle_vip"] = "VIP håndtag", + ["component_handle_bodyguard"] = "livvagt håndtag", + + ["component_vip_finish"] = "VIP Finish", + ["component_bodyguard_finish"] = "bodyguard Finish", + + ["component_camo_finish"] = "digital Camo", + ["component_camo_finish2"] = "brushstroke Camo", + ["component_camo_finish3"] = "woodland Camo", + ["component_camo_finish4"] = "skull Camo", + ["component_camo_finish5"] = "sessanta Nove Camo", + ["component_camo_finish6"] = "perseus Camo", + ["component_camo_finish7"] = "leopard Camo", + ["component_camo_finish8"] = "zebra Camo", + ["component_camo_finish9"] = "geometric Camo", + ["component_camo_finish10"] = "boom Camo", + ["component_camo_finish11"] = "patriotic Camo", + + ["component_camo_slide_finish"] = "digital Slide Camo", + ["component_camo_slide_finish2"] = "brushstroke Slide Camo", + ["component_camo_slide_finish3"] = "woodland Slide Camo", + ["component_camo_slide_finish4"] = "skull Slide Camo", + ["component_camo_slide_finish5"] = "sessanta Nove Slide Camo", + ["component_camo_slide_finish6"] = "perseus Slide Camo", + ["component_camo_slide_finish7"] = "leopard Slide Camo", + ["component_camo_slide_finish8"] = "zebra Slide Camo", + ["component_camo_slide_finish9"] = "geometric Slide Camo", + ["component_camo_slide_finish10"] = "boom Slide Camo", + ["component_camo_slide_finish11"] = "patriotic Slide Camo", + + ["component_clip_default"] = "standard magasin", + ["component_clip_extended"] = "udvidet Magasin", + ["component_clip_drum"] = "drum Magasin", + ["component_clip_box"] = "box Magazine", + + ["component_scope_holo"] = "rødpunktsigte", + ["component_scope_small"] = "lille sigte", + ["component_scope_medium"] = "medium sigte", + ["component_scope_large"] = "stort sigte", + ["component_scope"] = "mounted Scope", + ["component_scope_advanced"] = "avanceret sigte", + ["component_ironsights"] = "jernsigte", + + ["component_suppressor"] = "suppressor", + ["component_compensator"] = "compensator", + + ["component_muzzle_flat"] = "flat Muzzle Brake", + ["component_muzzle_tactical"] = "tactical Muzzle Brake", + ["component_muzzle_fat"] = "fat-End Muzzle Brake", + ["component_muzzle_precision"] = "precision Muzzle Brake", + ["component_muzzle_heavy"] = "heavy Duty Muzzle Brake", + ["component_muzzle_slanted"] = "slanted Muzzle Brake", + ["component_muzzle_split"] = "split-End Muzzle Brake", + ["component_muzzle_squared"] = "squared Muzzle Brake", + + ["component_flashlight"] = "våbenlygte", + ["component_grip"] = "greb", + + ["component_barrel_default"] = "default Barrel", + ["component_barrel_heavy"] = "heavy Barrel", + + ["component_ammo_tracer"] = "tracer Ammo", + ["component_ammo_incendiary"] = "incendiary Ammo", + ["component_ammo_hollowpoint"] = "hollowpoint Ammo", + ["component_ammo_fmj"] = "fMJ Ammo", + ["component_ammo_armor"] = "armor Piercing Ammo", + ["component_ammo_explosive"] = "armor Piercing Incendiary Ammo", + + ["component_shells_default"] = "default Shells", + ["component_shells_incendiary"] = "dragons Breath Shells", + ["component_shells_armor"] = "steel Buckshot Shells", + ["component_shells_hollowpoint"] = "flechette Shells", + ["component_shells_explosive"] = "explosive Slug Shells", + + -- Weapon Ammo + ["ammo_rounds"] = "round(s)", + ["ammo_shells"] = "shell(s)", + ["ammo_charge"] = "charge", + ["ammo_petrol"] = "gallons of fuel", + ["ammo_firework"] = "firework(s)", + ["ammo_rockets"] = "rocket(s)", + ["ammo_grenadelauncher"] = "grenade(s)", + ["ammo_grenade"] = "grenade(s)", + ["ammo_stickybomb"] = "bomb(s)", + ["ammo_pipebomb"] = "bomb(s)", + ["ammo_smokebomb"] = "bomb(s)", + ["ammo_molotov"] = "cocktail(s)", + ["ammo_proxmine"] = "mine(s)", + ["ammo_bzgas"] = "can(s)", + ["ammo_ball"] = "ball(s)", + ["ammo_snowball"] = "snowball(s)", + ["ammo_flare"] = "flare(s)", + ["ammo_flaregun"] = "flare(s)", + + -- Weapon Tints + ["tint_default"] = "default skin", + ["tint_green"] = "green skin", + ["tint_gold"] = "gold skin", + ["tint_pink"] = "pink skin", + ["tint_army"] = "army skin", + ["tint_lspd"] = "blue skin", + ["tint_orange"] = "orange skin", + ["tint_platinum"] = "platinum skin", +} diff --git a/[core]/es_extended/locales/de.lua b/[core]/es_extended/locales/de.lua index 52f4dd16c..c21f03ea4 100644 --- a/[core]/es_extended/locales/de.lua +++ b/[core]/es_extended/locales/de.lua @@ -52,7 +52,6 @@ Locales["de"] = { ["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", -- Commands ['command_bring'] = 'Person zu dir bringen', @@ -60,9 +59,6 @@ Locales["de"] = { ['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_clear'] = 'Textchat leeren', ['command_clearall'] = 'Textchat leeren für alle Spieler leeren', ['command_clearinventory'] = 'Alle Items von dem Inventar eines Spielers entfernen', @@ -101,10 +97,6 @@ Locales["de"] = { ['command_setjob_invalid'] = 'Der Job Grad oder beides sind ungültig', ['command_setgroup'] = 'Setzt eine Berechtigungs Gruppe für einen User', ['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)', @@ -208,7 +200,6 @@ Locales["de"] = { ["weapon_militaryrifle"] = "Militärgewehr", ["weapon_specialcarbine"] = "Spezialkarabiner", ["weapon_specialcarbine_mk2"] = "Spezialkarabiner MK2", - ["weapon_heavyrifle"] = "Schweres Gewehr", -- Sniper ["weapon_heavysniper"] = "Schwere Sniper", @@ -233,10 +224,10 @@ Locales["de"] = { ["weapon_tactilerifle"] = "Service Karabiner", -- Drug Wars DLC - ['weapon_candycane'] = 'Zuckerstange', - ['weapon_acidpackage'] = 'Säure Paket', - ['weapon_pistolxm3'] = 'WM 29 Pistole', - ['weapon_railgunxm3'] = 'Railgun', + ['weapon_candycane'] = 'Candy Cane', -- not translated + ['weapon_acidpackage'] = 'Acid Package', -- not translated + ['weapon_pistolxm3'] = 'WM 29 Pistol', -- not translated + ['weapon_railgunxm3'] = 'Railgun', -- not translated -- Thrown ["weapon_ball"] = "Baseball", @@ -318,7 +309,7 @@ Locales["de"] = { ["component_scope_advanced"] = "Fortgeschrittenes Zielfernrohr", ["component_ironsights"] = "Ironsights", - ["component_suppressor"] = "Entstörer", + ["component_suppressor"] = "Schalldämpfer", ["component_compensator"] = "Kompensator", ["component_muzzle_flat"] = "Flache Mündung", diff --git a/[core]/es_extended/locales/el.lua b/[core]/es_extended/locales/el.lua deleted file mode 100644 index 7bca2071a..000000000 --- a/[core]/es_extended/locales/el.lua +++ /dev/null @@ -1,381 +0,0 @@ -Locales["el"] = { - -- Inventory - ["inventory"] = "Αποθήκη ( Βάρος %s / %s )", - ["use"] = "Χρήση", - ["give"] = "Δώσε", - ["remove"] = "Πέτα", - ["return"] = "Επιστροφή", - ["give_to"] = "Δώσε σε", - ["amount"] = "Ποσότητα", - ["giveammo"] = "Δώσε σφαίρες", - ["amountammo"] = "Ποσότητα σφαιρών", - ["noammo"] = "Δεν υπάρχουν αρκετές σφαίρες!", - ["gave_item"] = "Δώσατε %sx %s στον/στην %s", - ["received_item"] = "Λάβατε %sx %s από τον/την %s", - ["gave_weapon"] = "Δίνετε %s στον/στην %s", - ["gave_weapon_ammo"] = "Δίνετε ~o~%sx %s για %s στον/στην %s", - ["gave_weapon_withammo"] = "Δίνετε %s με ~o~%sx %s στον/στην %s", - ["gave_weapon_hasalready"] = "Ο/Η %s έχει ήδη ένα %s", - ["gave_weapon_noweapon"] = "Ο/Η %s δεν έχει αυτό το όπλο", - ["received_weapon"] = "Λάβατε %s από τον/την %s", - ["received_weapon_ammo"] = "Λάβατε ~o~%sx %s για το %s από τον/την %s", - ["received_weapon_withammo"] = "Λάβατε %s για ~o~%sx %s από τον/την %s", - ["received_weapon_hasalready"] = "Ο/Η %s προσπάθησε να σας δώσει ένα %s, αλλά το έχετε ήδη", - ["received_weapon_noweapon"] = "Ο/Η %s προσπάθησε να σας δώσει σφαίρες για το %s, αλλά δεν έχετε αυτό το όπλο", - ["gave_account_money"] = "Δίνετε $%s (%s) στον/στην %s", - ["received_account_money"] = "Λάβατε $%s (%s) από τον/την %s", - ["amount_invalid"] = "Μη έγκυρη ποσότητα", - ["players_nearby"] = "Δεν υπάρχουν κοντινοί παίκτες", - ["ex_inv_lim"] = "Δεν είναι δυνατή η ενέργεια, υπέρβαση του μέγιστου βάρους των %s", - ["imp_invalid_quantity"] = "Δεν είναι δυνατή η ενέργεια, η ποσότητα δεν είναι έγκυρη", - ["imp_invalid_amount"] = "Δεν είναι δυνατή η ενέργεια, το ποσό δεν είναι έγκυρο", - ["threw_standard"] = "Ρίχνοντας %sx %s", - ["threw_account"] = "Ρίχνοντας $%s %s", - ["threw_weapon"] = "Ρίχνοντας %s", - ["threw_weapon_ammo"] = "Ρίχνοντας %s με ~o~%sx %s", - ["threw_weapon_already"] = "Ήδη έχετε αυτό το όπλο", - ["threw_cannot_pickup"] = "Η αποθήκη είναι γεμάτη, δεν μπορείτε να σηκώσετε!", - ["threw_pickup_prompt"] = "Πατήστε E για να σηκώσετε", - - -- Key mapping - ["keymap_showinventory"] = "Εμφάνιση Αποθήκης", - - -- Salary related - ["received_salary"] = "Έχετε λάβει μισθό: $%s", - ["received_help"] = "Έχετε λάβει το βοήθημά σας: $%s", - ["company_nomoney"] = "Η εταιρεία στην οποία είστε απασχολούμενος/η δεν έχει αρκετά χρήματα για να καταβάλει τον μισθό σας", - ["received_paycheck"] = "λάβατε μισθό", - ["bank"] = "Τράπεζα Maze", - ["account_bank"] = "Τραπεζικός Λογαριασμός", - ["account_black_money"] = "Βρώμικα Χρήματα", - ["account_money"] = "Μετρητά", - - ["act_imp"] = "Δεν είναι δυνατή η εκτέλεση της ενέργειας", - ["in_vehicle"] = "Δεν είναι δυνατή η εκτέλεση της ενέργειας, ο παίκτης βρίσκεται σε όχημα", - ["not_in_vehicle"] = "Δεν είναι δυνατή η εκτέλεση της ενέργειας, ο παίκτης δεν βρίσκεται σε κάποιο όχημα", - - -- Commands - ['command_bring'] = 'Φέρτε τον παίκτη σε εσάς', - ['command_car'] = 'Κλήση οχήματος', - ['command_car_car'] = 'Μοντέλο ή κωδικός οχήματος', - ['command_cardel'] = 'Κατάργηση οχημάτων κοντά', - ['command_cardel_radius'] = 'Καταργεί όλα τα οχήματα εντός της καθορισμένης ακτίνας', - ['command_repair'] = 'Επισκέυασε το όχημα σου', - ['command_repair_success'] = 'Το όχημα σου επισκευάστηκε', - ['command_repair_success_target'] = 'Ένας διαχειριστής επισκεύασε το όχημα σου', - ['command_clear'] = 'Καθαρισμός κειμένου στο chat', - ['command_clearall'] = 'Καθαρισμός κειμένου στο chat για όλους τους παίκτες', - ['command_clearinventory'] = 'Κατάργηση όλων των αντικειμένων από την αποθήκη των παικτών', - ['command_clearloadout'] = 'Κατάργηση όλων των όπλων από την εξάρτηση των παικτών', - ['command_freeze'] = 'Πάγωμα ενός παίκτη', - ['command_unfreeze'] = 'Ξεπάγωμα ενός παίκτη', - ['command_giveaccountmoney'] = 'Δώστε χρήματα σε καθορισμένο λογαριασμό', - ['command_giveaccountmoney_account'] = 'Λογαριασμός προς προσθήκη', - ['command_giveaccountmoney_amount'] = 'Ποσό προς προσθήκη', - ['command_giveaccountmoney_invalid'] = 'Μη έγκυρο όνομα λογαριασμού', - ['command_removeaccountmoney'] = 'Κατάργηση χρημάτων από καθορισμένο λογαριασμό', - ['command_removeaccountmoney_account'] = 'Λογαριασμός από τον οποίο θα καταργηθούν τα χρήματα', - ['command_removeaccountmoney_amount'] = 'Ποσό προς αφαίρεση', - ['command_removeaccountmoney_invalid'] = 'Μη έγκυρο όνομα λογαριασμού', - ['command_giveitem'] = 'Δώστε σε έναν παίκτη ένα αντικείμενο', - ['command_giveitem_item'] = 'Όνομα αντικειμένου', - ['command_giveitem_count'] = 'Ποσότητα', - ['command_giveweapon'] = 'Δώστε σε έναν παίκτη ένα όπλο', - ['command_giveweapon_weapon'] = 'Όνομα όπλου', - ['command_giveweapon_ammo'] = 'Ποσότητα πυρομαχικών', - ['command_giveweapon_hasalready'] = 'Ο παίκτης έχει ήδη αυτό το όπλο', - ['command_giveweaponcomponent'] = 'Δώστε σε έναν παίκτη μια εξάρτηση όπλου', - ['command_giveweaponcomponent_component'] = 'Όνομα εξάρτησης', - ['command_giveweaponcomponent_invalid'] = 'Μη έγκυρη εξάρτηση όπλου', - ['command_giveweaponcomponent_hasalready'] = 'Ο παίκτης έχει ήδη αυτήν την εξάρτηση όπλου', - ['command_giveweaponcomponent_missingweapon'] = 'Ο παίκτης δεν έχει αυτό το όπλο', - ['command_goto'] = 'Τηλεμεταφέρεστε σε έναν παίκτη', - ['command_kill'] = 'Σκοτώστε έναν παίκτη', - ['command_save'] = 'Εξαναγκαστική αποθήκευση δεδομένων ενός παίκτη', - ['command_saveall'] = 'Εξαναγκαστική αποθήκευση όλων των δεδομένων των παικτών', - ['command_setaccountmoney'] = 'Ορίστε τα χρήματα σε έναν καθορισμένο λογαριασμό', - ['command_setaccountmoney_amount'] = 'Ποσό', - ['command_setcoords'] = 'Τηλεμεταφερθείτε σε καθορισμένες συντεταγμένες', - ['command_setcoords_x'] = 'Τιμή X', - ['command_setcoords_y'] = 'Τιμή Y', - ['command_setcoords_z'] = 'Τιμή Z', - ['command_setjob'] = 'Ορίστε το επάγγελμα ενός παίκτη', - ['command_setjob_job'] = 'Όνομα', - ['command_setjob_grade'] = 'Βαθμός επαγγέλματος', - ['command_setjob_invalid'] = 'Το επάγγελμα, ο βαθμός ή και οι δύο είναι μη έγκυρα', - ['command_setgroup'] = 'Ορίστε την ομάδα δικαιωμάτων ενός παίκτη', - ['command_setgroup_group'] = 'Όνομα Ομάδας', - ['commanderror_argumentmismatch'] = 'Μη έγκυρος αριθμός ορισμάτων (δόθηκαν %s, αναμενόμενα %s)', - ['commanderror_argumentmismatch_number'] = 'Μη έγκυρος τύπος δεδομένων για το όρισμα #%s (δόθηκε συμβολοσειρά, αναμενόμενος αριθμός)', - ['commanderror_argumentmismatch_string'] = 'Μη έγκυρος τύπος δεδομένων για το όρισμα #%s (δόθηκε αριθμός, αναμενόμενη συμβολοσειρά)', - ['commanderror_invaliditem'] = 'Μη έγκυρο αντικείμενο', - ['commanderror_invalidweapon'] = 'Μη έγκυρο όπλο', - ['commanderror_console'] = 'Η εντολή δεν μπορεί να εκτελεστεί από την κονσόλα', - ['commanderror_invalidcommand'] = 'Μη έγκυρη εντολή - /%s', - ['commanderror_invalidplayerid'] = 'Ο καθορισμένος παίκτης δεν είναι συνδεδεμένος', - ['commandgeneric_playerid'] = 'Αναγνωριστικό διακομιστή του παίκτη', - ['command_giveammo_noweapon_found'] = 'Ο %s δεν έχει αυτό το όπλο', - ['command_giveammo_weapon'] = 'Όνομα όπλου', - ['command_giveammo_ammo'] = 'Ποσότητα πυρομαχικών', - ['tpm_nowaypoint'] = 'Δεν έχει οριστεί σημείο προορισμού.', - ['tpm_success'] = 'Επιτυχής τηλεμεταφορά', - - ['noclip_message'] = 'Το Noclip έχει %s', - ['enabled'] = '~g~ενεργοποιήθηκε~s~', - ['disabled'] = '~r~απενεργοποιήθηκε~s~', - - -- Ρυθμίσεις τοπικής γλώσσας - ["locale_digit_grouping_symbol"] = ",", - ["locale_currency"] = "£%s", - - -- Όπλα - - -- Χειροποίητα - ["weapon_dagger"] = "Στιλέτο", - ["weapon_bat"] = "Μπαστούνι", - ["weapon_battleaxe"] = "Πολεμική σείρα", - ["weapon_bottle"] = "Μπουκάλι", - ["weapon_crowbar"] = "Ροπαλάκι", - ["weapon_flashlight"] = "Φακός", - ["weapon_golfclub"] = "Γκολφ", - ["weapon_hammer"] = "Σφυρί", - ["weapon_hatchet"] = "Πέλεκυς", - ["weapon_knife"] = "Μαχαίρι", - ["weapon_knuckle"] = "Χειροπέδες", - ["weapon_machete"] = "Μαχαίρι μαχαιροπίρουνου", - ["weapon_nightstick"] = "Ρόπαλο νυχτερίδας", - ["weapon_wrench"] = "Ροκανίδι", - ["weapon_poolcue"] = "Καστήλα", - ["weapon_stone_hatchet"] = "Πέλεκυς από πέτρα", - ["weapon_switchblade"] = "Ξυραφάκι", - - -- Πιστόλια - ["weapon_appistol"] = "AP Πιστόλι", - ["weapon_ceramicpistol"] = "Κεραμικό πιστόλι", - ["weapon_combatpistol"] = "Πολεμικό πιστόλι", - ["weapon_doubleaction"] = "Διπλής δράσης Ριβόλβερ", - ["weapon_navyrevolver"] = "Ναυτικό Ρεβόλβερ", - ["weapon_flaregun"] = "Πιστόλι αστραπών", - ["weapon_gadgetpistol"] = "Πιστόλι συσκευών", - ["weapon_heavypistol"] = "Βαρύ πιστόλι", - ["weapon_revolver"] = "Βαρύ Ρεβόλβερ", - ["weapon_revolver_mk2"] = "Βαρύ Ρεβόλβερ MK2", - ["weapon_marksmanpistol"] = "Πιστόλι μονομάχου", - ["weapon_pistol"] = "Πιστόλι", - ["weapon_pistol_mk2"] = "Πιστόλι MK2", - ["weapon_pistol50"] = "Πιστόλι .50", - ["weapon_snspistol"] = "Πιστόλι SNS", - ["weapon_snspistol_mk2"] = "Πιστόλι SNS MK2", - ["weapon_stungun"] = "Ηλεκτροπληξία", - ["weapon_raypistol"] = "Up-N-Atomizer", - ["weapon_vintagepistol"] = "Βιομηχανικό πιστόλι", - - -- Καραμπίνες - ["weapon_assaultshotgun"] = "Πολεμική Καραμπίνα", - ["weapon_autoshotgun"] = "Αυτόματη Καραμπίνα", - ["weapon_bullpupshotgun"] = "Bullpup Καραμπίνα", - ["weapon_combatshotgun"] = "Καραμπίνα πολέμου", - ["weapon_dbshotgun"] = "Διπλής κάννης Καραμπίνα", - ["weapon_heavyshotgun"] = "Βαριά Καραμπίνα", - ["weapon_musket"] = "Μουσκέτα", - ["weapon_pumpshotgun"] = "Καραμπίνα αντλίας", - ["weapon_pumpshotgun_mk2"] = "Καραμπίνα αντλίας MK2", - ["weapon_sawnoffshotgun"] = "Καραμπίνα με κοντά κάννη", - - -- SMG & LMG - ["weapon_assaultsmg"] = "Πολεμικό SMG", - ["weapon_combatmg"] = "Πολεμικό MG", - ["weapon_combatmg_mk2"] = "Πολεμικό MG MK2", - ["weapon_combatpdw"] = "Πολεμικό PDW", - ["weapon_gusenberg"] = "Gusenberg Sweeper", - ["weapon_machinepistol"] = "Πιστόλι Αυτόματης Καραμπίνας", - ["weapon_mg"] = "MG", - ["weapon_microsmg"] = "Μικρό SMG", - ["weapon_minismg"] = "Μικρό SMG", - ["weapon_smg"] = "SMG", - ["weapon_smg_mk2"] = "SMG MK2", - ["weapon_raycarbine"] = "Ανεξίτηλο Hellbringer", - - -- Καραμπίνες - ["weapon_advancedrifle"] = "Προηγμένη Καραμπίνα", - ["weapon_assaultrifle"] = "Καραμπίνα Επίθεσης", - ["weapon_assaultrifle_mk2"] = "Καραμπίνα Επίθεσης MK2", - ["weapon_bullpuprifle"] = "Bullpup Καραμπίνα", - ["weapon_bullpuprifle_mk2"] = "Bullpup Καραμπίνα MK2", - ["weapon_carbinerifle"] = "Καραμπίνα", - ["weapon_carbinerifle_mk2"] = "Καραμπίνα MK2", - ["weapon_compactrifle"] = "Συμπαγής Καραμπίνα", - ["weapon_militaryrifle"] = "Στρατιωτική Καραμπίνα", - ["weapon_specialcarbine"] = "Ειδική Καραμπίνα", - ["weapon_specialcarbine_mk2"] = "Ειδική Καραμπίνα MK2", - - -- Κυνηγετικά - ["weapon_heavysniper"] = "Βαρύ Κυνηγετικό Ρίφλε", - ["weapon_heavysniper_mk2"] = "Βαρύ Κυνηγετικό Ρίφλε MK2", - ["weapon_marksmanrifle"] = "Ρίφλε Επαγγελματία Σκοπευτή", - ["weapon_marksmanrifle_mk2"] = "Ρίφλε Επαγγελματία Σκοπευτή MK2", - ["weapon_sniperrifle"] = "Κυνηγετικό Ρίφλε", - ["weapon_heavyrifle"] = "βαρύ τουφέκι", - - -- Βαριά / Εκτοξευτές - ["weapon_compactlauncher"] = "Συμπαγής Εκτοξευτής", - ["weapon_firework"] = "Εκτοξευτής Πυροτεχνημάτων", - ["weapon_grenadelauncher"] = "Εκτοξευτής Γρανατών", - ["weapon_hominglauncher"] = "Εκτοξευτής Εξόρυξης", - ["weapon_minigun"] = "Minigun", - ["weapon_railgun"] = "Railgun", - ["weapon_rpg"] = "Εκτοξευτής Πυραύλων", - ["weapon_rayminigun"] = "Widowmaker", - - -- Επιπλέον Όπλα από το Criminal Enterprises DLC - ["weapon_metaldetector"] = "Ανιχνευτής Μετάλλων", - ["weapon_precisionrifle"] = "Όπλο Ακρίβειας", - ["weapon_tactilerifle"] = "Όπλο Εξυπηρέτησης", - - -- Drug wars dlc - ["weapon_candycane"] = "Candycane", - ["weapon_acidpackage"] = "Acid Package", - ["weapon_pistolxm3"] = "Pistol8 x3m", - ["weapon_railgunxm3"] = "Railgun", - - -- Ρίψεις - ["weapon_ball"] = "Μπάλα", - ["weapon_bzgas"] = "BZ Gas", - ["weapon_flare"] = "Πυροτεχνήματα", - ["weapon_grenade"] = "Χειροβομβίδα", - ["weapon_petrolcan"] = "Κανέλα Βενζίνης", - ["weapon_hazardcan"] = "Κανέλα Επικίνδυνης Υλικότητας", - ["weapon_molotov"] = "Μολότοφ", - ["weapon_proxmine"] = "Νάρκη Εγγύτητας", - ["weapon_pipebomb"] = "Βόμβα Σωλήνα", - ["weapon_snowball"] = "Χιονόμπαλα", - ["weapon_stickybomb"] = "Κολλητή Βόμβα", - ["weapon_smokegrenade"] = "Δακρυγόνο", - - -- Ειδικά - ["weapon_fireextinguisher"] = "Πυροσβεστήρας", - ["weapon_digiscanner"] = "Ψηφιακός Σαρωτής", - ["weapon_garbagebag"] = "Σακούλα Απορριμμάτων", - ["weapon_handcuffs"] = "Χειροπέδες", - ["gadget_nightvision"] = "Νυχτερινή Όραση", - ["gadget_parachute"] = "Αλεξίπτωτο", - - -- Συστατικά Όπλων - ["component_knuckle_base"] = "Βασικό Μοντέλο", - ["component_knuckle_pimp"] = "Ο Φιλότιμος", - ["component_knuckle_ballas"] = "Οι Ballas", - ["component_knuckle_dollar"] = "Ο Εξαπατητής", - ["component_knuckle_diamond"] = "Η Ρόκα", - ["component_knuckle_hate"] = "Ο Μισητός", - ["component_knuckle_love"] = "Ο Εραστής", - ["component_knuckle_player"] = "Ο Παίκτης", - ["component_knuckle_king"] = "Ο Βασιλιάς", - ["component_knuckle_vagos"] = "Οι Vagos", - - ["component_luxary_finish"] = "Πολυτελές Φινίρισμα Όπλου", - - ["component_handle_default"] = "Προεπιλεγμένη Χειρολαβή", - ["component_handle_vip"] = "Χειρολαβή VIP", - ["component_handle_bodyguard"] = "Χειρολαβή Σωματοφύλακα", - - ["component_vip_finish"] = "Πολυτελές Φινίρισμα VIP", - ["component_bodyguard_finish"] = "Πολυτελές Φινίρισμα Σωματοφύλακα", - - ["component_camo_finish"] = "Ψηφιακό Καμουφλάζ", - ["component_camo_finish2"] = "Καμουφλάζ Πινελίου", - ["component_camo_finish3"] = "Καμουφλάζ Δάσους", - ["component_camo_finish4"] = "Καμουφλάζ Κρανίου", - ["component_camo_finish5"] = "Καμουφλάζ Sessanta Nove", - ["component_camo_finish6"] = "Καμουφλάζ Perseus", - ["component_camo_finish7"] = "Καμουφλάζ Λεοπάρδαλης", - ["component_camo_finish8"] = "Καμουφλάζ Ζέβρας", - ["component_camo_finish9"] = "Γεωμετρικό Καμουφλάζ", - ["component_camo_finish10"] = "Καμουφλάζ Boom", - ["component_camo_finish11"] = "Πατριωτικό Καμουφλάζ", - - ["component_camo_slide_finish"] = "Ψηφιακό Καμουφλάζ Slide", - ["component_camo_slide_finish2"] = "Καμουφλάζ Πινελίου Slide", - ["component_camo_slide_finish3"] = "Καμουφλάζ Δάσους Slide", - ["component_camo_slide_finish4"] = "Καμουφλάζ Κρανίου Slide", - ["component_camo_slide_finish5"] = "Καμουφλάζ Sessanta Nove Slide", - ["component_camo_slide_finish6"] = "Καμουφλάζ Perseus Slide", - ["component_camo_slide_finish7"] = "Καμουφλάζ Λεοπάρδαλης Slide", - ["component_camo_slide_finish8"] = "Καμουφλάζ Ζέβρας Slide", - ["component_camo_slide_finish9"] = "Γεωμετρικό Καμουφλάζ Slide", - ["component_camo_slide_finish10"] = "Καμουφλάζ Boom Slide", - ["component_camo_slide_finish11"] = "Πατριωτικό Καμουφλάζ Slide", - - ["component_clip_default"] = "Προεπιλεγμένο Περιοδικό", - ["component_clip_extended"] = "Επέκταση Περιοδικού", - ["component_clip_drum"] = "Περιοδικό Κάδος", - ["component_clip_box"] = "Περιοδικό Κιβώτιο", - - ["component_scope_holo"] = "Ολογραφική Σκοπευτική Συσκευή", - ["component_scope_small"] = "Μικρή Σκοπευτική Συσκευή", - ["component_scope_medium"] = "Μεσαία Σκοπευτική Συσκευή", - ["component_scope_large"] = "Μεγάλη Σκοπευτική Συσκευή", - ["component_scope"] = "Σκοπευτική Συσκευή Εγκατεστημένη", - ["component_scope_advanced"] = "Προηγμένη Σκοπευτική Συσκευή", - ["component_ironsights"] = "Σκοπευτικά Σιδερά", - - ["component_suppressor"] = "Καταστεναγματοποιητής", - ["component_compensator"] = "Αποζημιωτής", - - ["component_muzzle_flat"] = "Επίπεδο Φρένο Αέρα", - ["component_muzzle_tactical"] = "Τακτικό Φρένο Αέρα", - ["component_muzzle_fat"] = "Φρένο Αέρα Παχύ Άκρο", - ["component_muzzle_precision"] = "Φρένο Αέρα Ακρίβειας", - ["component_muzzle_heavy"] = "Φρένο Αέρα Βαρέως Τύπου", - ["component_muzzle_slanted"] = "Φρένο Αέρα Ανοιγοκλειστό", - ["component_muzzle_split"] = "Φρένο Αέρα Υποκλιμακούμενο", - ["component_muzzle_squared"] = "Φρένο Αέρα Τετραγωνισμένο", - - ["component_flashlight"] = "Φακός", - ["component_grip"] = "Λαβή", - - ["component_barrel_default"] = "Προεπιλεγμένο Κάννα", - ["component_barrel_heavy"] = "Βαριά Κάννα", - - ["component_ammo_tracer"] = "Σφαίρες με Ιχνηθέν Φωτός", - ["component_ammo_incendiary"] = "Σφαίρες Φωτιάς", - ["component_ammo_hollowpoint"] = "Σφαίρες Κενές Άκρες", - ["component_ammo_fmj"] = "Σφαίρες FMJ", - ["component_ammo_armor"] = "Σφαίρες Διάτρησης Θωράκισης", - ["component_ammo_explosive"] = "Εκρηκτικές Σφαίρες Διάτρησης Θωράκισης", - - ["component_shells_default"] = "Προεπιλεγμένες Φυσίγγια", - ["component_shells_incendiary"] = "Φυσίγγια Διαμαντινών", - ["component_shells_armor"] = "Φυσίγγια Θωράκισης Χάλυβα", - ["component_shells_hollowpoint"] = "Φυσίγγια Κενών Άκρων", - ["component_shells_explosive"] = "Φυσίγγια Εκρηκτικών", - - -- Πυρομαχικά Όπλων - ["ammo_rounds"] = "σφαιρίδιο(α)", - ["ammo_shells"] = "φυσίγγιο(α)", - ["ammo_charge"] = "φορτίο", - ["ammo_petrol"] = "γαλόνια καυσίμου", - ["ammo_firework"] = "πυροτεχνήματο(α)", - ["ammo_rockets"] = "πύραυλο(ι)", - ["ammo_grenadelauncher"] = "χειροβομβίδα(ες)", - ["ammo_grenade"] = "χειροβομβίδα(ες)", - ["ammo_stickybomb"] = "βόμβα(ες)", - ["ammo_pipebomb"] = "βόμβα(ες)", - ["ammo_smokebomb"] = "βόμβα(ες) καπνού", - ["ammo_molotov"] = "κοκτέιλ μολότοφ(α)", - ["ammo_proxmine"] = "μίνα(ες) εγγύτητας", - ["ammo_bzgas"] = "κανίστρα(ες)", - ["ammo_ball"] = "μπάλα(ες)", - ["ammo_snowball"] = "χιονόμπαλα(ες)", - ["ammo_flare"] = "φλογοβολίδα(ες)", - ["ammo_flaregun"] = "φλογοβολίδα(ες)", - - -- Επιστρώσεις Όπλων - ["tint_default"] = "προεπιλεγμένο δέρμα", - ["tint_green"] = "πράσινο δέρμα", - ["tint_gold"] = "χρυσό δέρμα", - ["tint_pink"] = "ροζ δέρμα", - ["tint_army"] = "στρατιωτικό δέρμα", - ["tint_lspd"] = "μπλε δέρμα", - ["tint_orange"] = "πορτοκαλί δέρμα", - ["tint_platinum"] = "πλατίνενο δέρμα", -} diff --git a/[core]/es_extended/locales/en.lua b/[core]/es_extended/locales/en.lua index 81eb738b7..136819f5c 100644 --- a/[core]/es_extended/locales/en.lua +++ b/[core]/es_extended/locales/en.lua @@ -52,7 +52,6 @@ Locales["en"] = { ["act_imp"] = "Cannot Perform Action", ["in_vehicle"] = "Cannot Perform Action, Player is in a vehicle", - ["not_in_vehicle"] = "Cannot Perform Action, Player isn't in a vehicle", -- Commands ['command_bring'] = 'Bring player to you', @@ -60,9 +59,6 @@ Locales["en"] = { ['command_car_car'] = 'Vehicle model or hash', ['command_cardel'] = 'Remove vehicles in proximity', ['command_cardel_radius'] = 'Removes all vehicles within the specified radius', - ['command_repair'] = 'Repair your vehicle', - ['command_repair_success'] = 'Successfully repaired vehicle', - ['command_repair_success_target'] = 'An admin repaired your vehicle', ['command_clear'] = 'Clear chat Text', ['command_clearall'] = 'Clear chat Text for all players', ['command_clearinventory'] = 'Remove All items from the Players Inventory', @@ -208,7 +204,6 @@ Locales["en"] = { ["weapon_militaryrifle"] = "Military Rifle", ["weapon_specialcarbine"] = "Special Carbine", ["weapon_specialcarbine_mk2"] = "Special Carbine MK2", - ["weapon_heavyrifle"] = "Heavy Rifle", -- Sniper ["weapon_heavysniper"] = "Heavy Sniper", @@ -232,12 +227,6 @@ Locales["en"] = { ["weapon_precisionrifle"] = "Precision Rifle", ["weapon_tactilerifle"] = "Service Carbine", - -- Drug wars dlc - ["weapon_candycane"] = "Candycane", - ["weapon_acidpackage"] = "Acid Package", - ["weapon_pistolxm3"] = "Pistol8 x3m", - ["weapon_railgunxm3"] = "Railgun", - -- Thrown ["weapon_ball"] = "Baseball", ["weapon_bzgas"] = "BZ Gas", diff --git a/[core]/es_extended/locales/es.lua b/[core]/es_extended/locales/es.lua index 9a3791a09..45bfb1d98 100644 --- a/[core]/es_extended/locales/es.lua +++ b/[core]/es_extended/locales/es.lua @@ -52,7 +52,6 @@ Locales["es"] = { ["act_imp"] = "No se pudo realizar la acción.", ["in_vehicle"] = "Acción rechazada. El jugador se encuentra en un vehículo", - ["not_in_vehicle"] = "Cannot Perform Action, Player isn't in a vehicle", -- Commands ['command_bring'] = 'Traer un jugador hacia ti', @@ -60,9 +59,6 @@ Locales["es"] = { ['command_car_car'] = 'Nombre del vehículo', ['command_cardel'] = 'Eliminar vehículos cercanos', ['command_cardel_radius'] = 'Opcional, eliminar todos los vehículos en el radio especificado', - ['command_repair'] = 'Reparar tu vehiculo', - ['command_repair_success'] = 'Vehiculo reparado correctamente', - ['command_repair_success_target'] = 'Un administrador reparo tu vehiculo', ['command_clear'] = 'Limpiar chat para ti', ['command_clearall'] = 'Limpiar chat para todos los jugadores', ['command_clearinventory'] = 'Limpiar el inventario del jugador', @@ -121,10 +117,10 @@ Locales["es"] = { -- Weapons -- Drug Wars DLC - ['weapon_candycane'] = 'Hacha de Caramelo ', - ['weapon_acidpackage'] = 'Paquete de Acido', - ['weapon_pistolxm3'] = 'Pistola WM 29', - ['weapon_railgunxm3'] = 'Fusil electromagnético', + ['weapon_candycane'] = 'Candy Cane', -- not translated + ['weapon_acidpackage'] = 'Acid Package', -- not translated + ['weapon_pistolxm3'] = 'WM 29 Pistol', -- not translated + ['weapon_railgunxm3'] = 'Railgun', -- not translated -- Melee ["weapon_dagger"] = "Daga", @@ -162,7 +158,7 @@ Locales["es"] = { ["weapon_pistol50"] = "Pistola .50", ["weapon_snspistol"] = "Pistola SNS", ["weapon_snspistol_mk2"] = "Pistola SNS MK2", - ["weapon_stungun"] = "Taser", + ["weapon_stungun"] = "Tazer", ["weapon_raypistol"] = "Up-N-Atomizer", ["weapon_vintagepistol"] = "Pistola Vintage", @@ -204,7 +200,6 @@ Locales["es"] = { ["weapon_militaryrifle"] = "Rifle Militar", ["weapon_specialcarbine"] = "Carabina Especial", ["weapon_specialcarbine_mk2"] = "Carabina Especial MK2", - ["weapon_heavyrifle"] = "Rifle Pesado", -- Sniper ["weapon_heavysniper"] = "Francotirador Pesado", diff --git a/[core]/es_extended/locales/fi.lua b/[core]/es_extended/locales/fi.lua index bd32d952d..9eff6471c 100644 --- a/[core]/es_extended/locales/fi.lua +++ b/[core]/es_extended/locales/fi.lua @@ -52,16 +52,12 @@ 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", -- Commands ['command_car'] = 'Luo ajoneuvo', ['command_car_car'] = 'Ajoneuvon nimi tai hash', ['command_cardel'] = 'Poistaa ajoneuvon läheltä', ['command_cardel_radius'] = 'Valinnainen, poista kaikki ajoneuvot määritetyllä säteellä', - ['command_repair'] = 'Repair your vehicle', - ['command_repair_success'] = 'Successfully repaired vehicle', - ['command_repair_success_target'] = 'An admin repaired your vehicle', ['command_clear'] = 'Tyhjennä keskustelu', ['command_clearall'] = 'Tyhjennä keskustelu kaikilta pelaajilta', ['command_clearinventory'] = 'Tyhjennä pelaajan reppu', @@ -194,7 +190,6 @@ Locales["fi"] = { ["gadget_parachute"] = "Laskuvarjo", ["weapon_flare"] = "Hätäraketti", ["weapon_doubleaction"] = "Double action revolveri", - ["weapon_heavyrifle"] = "Heavy Rifle", -- Not Translated -- Weapon Components ["component_clip_default"] = "Oletus lipas", diff --git a/[core]/es_extended/locales/fr.lua b/[core]/es_extended/locales/fr.lua index 3dedf7928..bc5289d52 100644 --- a/[core]/es_extended/locales/fr.lua +++ b/[core]/es_extended/locales/fr.lua @@ -52,7 +52,6 @@ Locales["fr"] = { ["act_imp"] = "Action impossible", ["in_vehicle"] = "Action impossible, le joueur est dans un véhicule", - ["not_in_vehicle"] = "Action impossible, le joueur n'est pas dans un véhicule", -- Commands ["command_bring"] = "Téléporter un joueur sur vous", @@ -60,9 +59,6 @@ Locales["fr"] = { ["command_car_car"] = "Nom ou hash du véhicule", ["command_cardel"] = "Supprimer les véhicules à proximité", ["command_cardel_radius"] = "Supprime tous les véhicules dans un rayon spécifié", - ["command_repair"] = "Réparer votre véhicule", - ["command_repair_success"] = "Véhicule réparé avec succès", - ["command_repair_success_target"] = "Votre véhicule a été réparé par un membre du staff", ["command_clear"] = "Effacer le chat", ["command_clearall"] = "Effacer le chat de tous les joueurs", ["command_clearinventory"] = "Retirer tous les objets de l'inventaire du joueur", @@ -107,7 +103,6 @@ Locales["fr"] = { ["command_setgroup_group"] = "Nom du groupe à définir", ["commanderror_argumentmismatch"] = "Le nombre d'arguments est invalide (Argument·s donné·s: %s, Argument·s demandé·s: %s)", ["commanderror_argumentmismatch_number"] = "Type de données de l'argument #%s invalide (Type donné: texte, Type demandé: nombre)", - ["commanderror_argumentmismatch_string"] = "Type de données de l'argument #%s invalide (Type donné: nombre, Type demandé: texte)", ["commanderror_invaliditem"] = "Le nom de l'objet est invalide", ["commanderror_invalidweapon"] = "Le nom de l'arme est invalide", ["commanderror_console"] = "Cette commande ne peut pas être éxécutée depuis la console", @@ -208,7 +203,6 @@ Locales["fr"] = { ["weapon_militaryrifle"] = "Fusil militaire", ["weapon_specialcarbine"] = "Carabine spéciale", ["weapon_specialcarbine_mk2"] = "Carabine spéciale MK2", - ["weapon_heavyrifle"] = "Fusil lourd", -- Sniper ["weapon_heavysniper"] = "Sniper lourd", @@ -232,12 +226,6 @@ Locales["fr"] = { ["weapon_precisionrifle"] = "Fusil de précision", ["weapon_tactilerifle"] = "Carabine tactique", - -- Drug wars dlc - ["weapon_candycane"] = "Sucre d'orge", - ["weapon_acidpackage"] = "Paquet d'acide", - ["weapon_pistolxm3"] = "Pistolet 8 x3m", - ["weapon_railgunxm3"] = "Fusil électro-magnétique", - -- Thrown ["weapon_ball"] = "Base-ball", ["weapon_bzgas"] = "Gaz BZ", diff --git a/[core]/es_extended/locales/he.lua b/[core]/es_extended/locales/he.lua deleted file mode 100644 index c2bafc991..000000000 --- a/[core]/es_extended/locales/he.lua +++ /dev/null @@ -1,374 +0,0 @@ -Locales["he"] = { - -- Inventory - ["inventory"] = "מלאי ( משקל %s / %s )", - ["use"] = "שימוש", - ["give"] = "תן", - ["remove"] = "זרוק", - ["return"] = "חזור", - ["give_to"] = "תן ל", - ["amount"] = "כמות", - ["giveammo"] = "תן תחמושת", - ["amountammo"] = "כמות תחמושת", - ["noammo"] = "אין מספיק!", - ["gave_item"] = "נתת %sx %s ל %s", - ["received_item"] = "קיבלת %sx %s מ %s", - ["gave_weapon"] = "נתת %s ל %s", - ["gave_weapon_ammo"] = "נתת ~o~%sx %s עבור %s ל %s", - ["gave_weapon_withammo"] = "נתת %s עם ~o~%sx %s ל %s", - ["gave_weapon_hasalready"] = "%s כבר יש לו %s", - ["gave_weapon_noweapon"] = "%s אין לו את הנשק", - ["received_weapon"] = "קיבלת %s מ %s", - ["received_weapon_ammo"] = "קיבלת ~o~%sx %s ל %s שלך מ %s", - ["received_weapon_withammo"] = "קיבלת %s עם ~o~%sx %s מ %s", - ["received_weapon_hasalready"] = "%s ניסה לתת לך %s, אבל כבר יש לך את הנשק הזה", - ["received_weapon_noweapon"] = "%s ניסה לתת לך תחמושת עבור %s, אבל אין לך את הנשק הזה", - ["gave_account_money"] = "נתת $%s (%s) ל %s", - ["received_account_money"] = "קיבלת $%s (%s) מ %s", - ["amount_invalid"] = "כמות לא חוקית", - ["players_nearby"] = "אין שחקנים בקרבת מקום", - ["ex_inv_lim"] = "לא ניתן לבצע פעולה, משקל מרבי של %s", - ["imp_invalid_quantity"] = "לא ניתן לבצע פעולה, הכמות לא חוקית", - ["imp_invalid_amount"] = "לא ניתן לבצע פעולה, הסכום לא חוקי", - ["threw_standard"] = "זרקת %sx %s", - ["threw_account"] = "זרקת $%s %s", - ["threw_weapon"] = "זרקת %s", - ["threw_weapon_ammo"] = "זרקת %s עם ~o~%sx %s", - ["threw_weapon_already"] = "כבר יש לך את הנשק הזה", - ["threw_cannot_pickup"] = "המלאי מלא, לא ניתן לאסוף!", - ["threw_pickup_prompt"] = "לחץ על E כדי לאסוף", - - -- Key mapping - ["keymap_showinventory"] = "הצג מלאי", - - -- Salary related - ["received_salary"] = "קיבלת שכר: $%s", - ["received_help"] = "קיבלת הוצאה לפנסיה: $%s", - ["company_nomoney"] = "החברה שאצלה אתה עובד אינה מסוגלת לשלם את השכר שלך", - ["received_paycheck"] = "קיבלת פיקדון שכר", - ["bank"] = "בנק Maze", - ["account_bank"] = "בנק", - ["account_black_money"] = "כסף מטונף", - ["account_money"] = "מזומן", - - ["act_imp"] = "לא ניתן לבצע פעולה", - ["in_vehicle"] = "לא ניתן לבצע פעולה, השחקן נמצא ברכב", - - -- Commands - ['command_bring'] = 'הבא שחקן אליך', - ['command_car'] = 'צור רכב', - ['command_car_car'] = 'דגם הרכב או הקוד', - ['command_cardel'] = 'הסר רכבים בסביבה', - ['command_cardel_radius'] = 'מסיר את כל הרכבים ברדיוס המצויין', - ['command_clear'] = 'נקה טקסט בצאט', - ['command_clearall'] = 'נקה טקסט בצאט עבור כל השחקנים', - ['command_clearinventory'] = 'הסר את כל הפריטים מהמלאי של השחקן', - ['command_clearloadout'] = 'הסר את כל הנשק מהשחקן', - ['command_freeze'] = 'הקפא שחקן', - ['command_unfreeze'] = 'בטל הקפאת שחקן', - ['command_giveaccountmoney'] = 'תן כסף לחשבון מסוים', - ['command_giveaccountmoney_account'] = 'חשבון להוספה', - ['command_giveaccountmoney_amount'] = 'סכום להוספה', - ['command_giveaccountmoney_invalid'] = 'שם חשבון לא חוקי', - ['command_removeaccountmoney'] = 'הסר כסף מחשבון מסוים', - ['command_removeaccountmoney_account'] = 'חשבון להסרה ממנו', - ['command_removeaccountmoney_amount'] = 'סכום להסרה', - ['command_removeaccountmoney_invalid'] = 'שם חשבון לא חוקי', - ['command_giveitem'] = 'תן לשחקן פריט', - ['command_giveitem_item'] = 'שם הפריט', - ['command_giveitem_count'] = 'כמות', - ['command_giveweapon'] = 'תן לשחקן נשק', - ['command_giveweapon_weapon'] = 'שם הנשק', - ['command_giveweapon_ammo'] = 'כמות תחמושת', - ['command_giveweapon_hasalready'] = 'לשחקן כבר יש את הנשק הזה', - ['command_giveweaponcomponent'] = 'תן רכיב נשק לשחקן', - ['command_giveweaponcomponent_component'] = 'שם הרכיב', - ['command_giveweaponcomponent_invalid'] = 'רכיב נשק לא חוקי', - ['command_giveweaponcomponent_hasalready'] = 'לשחקן כבר יש את הרכיב של הנשק', - ['command_giveweaponcomponent_missingweapon'] = 'לשחקן אין את הנשק הזה', - ['command_goto'] = 'העבר את עצמך לשחקן', - ['command_kill'] = 'הרוג שחקן', - ['command_save'] = 'שמור את המידע של השחקן', - ['command_saveall'] = 'שמור את המידע של כל השחקנים', - ['command_setaccountmoney'] = 'הגדר את הכסף בחשבון מסוים', - ['command_setaccountmoney_amount'] = 'סכום', - ['command_setcoords'] = 'העבר לנקודת הקואורדינטות שצוינו', - ['command_setcoords_x'] = 'ערך X', - ['command_setcoords_y'] = 'ערך Y', - ['command_setcoords_z'] = 'ערך Z', - ['command_setjob'] = 'הגדר את העבודה של השחקן', - ['command_setjob_job'] = 'שם', - ['command_setjob_grade'] = 'דרגת עבודה', - ['command_setjob_invalid'] = 'העבודה, הדרגה או שניהם לא חוקיים', - ['command_setgroup'] = 'הגדר את קבוצת ההרשאות של השחקן', - ['command_setgroup_group'] = 'שם הקבוצה', - ['commanderror_argumentmismatch'] = 'כמות הארגומנטים אינה תואמת (התקבלו %s, דרושים %s)', - ['commanderror_argumentmismatch_number'] = 'סוג הנתונים של הארגומנט #%s אינו תואם (התקבלה מחרוזת, נדרש מספר)', - ['commanderror_argumentmismatch_string'] = 'סוג הנתונים של הארגומנט #%s אינו תואם (התקבל מספר, נדרשה מחרוזת)', - ['commanderror_invaliditem'] = 'פריט לא חוקי', - ['commanderror_invalidweapon'] = 'נשק לא חוקי', - ['commanderror_console'] = 'לא ניתן לבצע את הפקודה מהקונסולה', - ['commanderror_invalidcommand'] = 'פקודה לא חוקית - /%s', - ['commanderror_invalidplayerid'] = 'השחקן שצוין אינו מחובר', - ['commandgeneric_playerid'] = 'מספר השחקן בשרת', - ['command_giveammo_noweapon_found'] = '%s אין לו את הנשק', - ['command_giveammo_weapon'] = 'שם הנשק', - ['command_giveammo_ammo'] = 'כמות תחמושת', - ['tpm_nowaypoint'] = 'לא הוגדרה נקודת דרך.', - ['tpm_success'] = 'הועברת בהצלחה', - - ['noclip_message'] = 'Noclip הופך להיות %s', - ['enabled'] = '~g~מופעל~s~', - ['disabled'] = '~r~מבוטל~s~', - - -- Locale settings - ["locale_digit_grouping_symbol"] = ",", - ["locale_currency"] = "£%s", - - -- Weapons - - -- Melee - ["weapon_dagger"] = "סכין", - ["weapon_bat"] = "מקל", - ["weapon_battleaxe"] = "קרדום לחימה", - ["weapon_bottle"] = "בקבוק", - ["weapon_crowbar"] = "מפתח עגלה", - ["weapon_flashlight"] = "פנס יד", - ["weapon_golfclub"] = "מקל גולף", - ["weapon_hammer"] = "פטיש", - ["weapon_hatchet"] = "קרדום", - ["weapon_knife"] = "סכין", - ["weapon_knuckle"] = "אגרופים", - ["weapon_machete"] = "מאצ'טה", - ["weapon_nightstick"] = "מקלון", - ["weapon_wrench"] = "מפתח ברגים", - ["weapon_poolcue"] = "מקל ביליארד", - ["weapon_stone_hatchet"] = "קרדום אבן", - ["weapon_switchblade"] = "סכין מתקפלת", - - -- Handguns - ["weapon_appistol"] = "אקדח AP", - ["weapon_ceramicpistol"] = "אקדח קרמיקה", - ["weapon_combatpistol"] = "אקדח לחימה", - ["weapon_doubleaction"] = "רבולבר פעולה כפולה", - ["weapon_navyrevolver"] = "רבולבר חיל הים", - ["weapon_flaregun"] = "אקדח תותחני", - ["weapon_gadgetpistol"] = "אקדח גאדג'ט", - ["weapon_heavypistol"] = "אקדח כבד", - ["weapon_revolver"] = "רבולבר כבד", - ["weapon_revolver_mk2"] = "רבולבר כבד MK2", - ["weapon_marksmanpistol"] = "אקדח מציין", - ["weapon_pistol"] = "אקדח", - ["weapon_pistol_mk2"] = "אקדח MK2", - ["weapon_pistol50"] = "אקדח .50", - ["weapon_snspistol"] = "אקדח SNS", - ["weapon_snspistol_mk2"] = "אקדח SNS MK2", - ["weapon_stungun"] = "טייזר", - ["weapon_raypistol"] = "אקדח קרניים", - ["weapon_vintagepistol"] = "אקדח וינטג'", - - -- Shotguns - ["weapon_assaultshotgun"] = "רובה תוקף", - ["weapon_autoshotgun"] = "רובה אוטומטי", - ["weapon_bullpupshotgun"] = "רובה קטלב", - ["weapon_combatshotgun"] = "רובה לחימה", - ["weapon_dbshotgun"] = "רובה כפול", - ["weapon_heavyshotgun"] = "רובה כבד", - ["weapon_musket"] = "משקוף", - ["weapon_pumpshotgun"] = "רובה משאבה", - ["weapon_pumpshotgun_mk2"] = "רובה משאבה MK2", - ["weapon_sawnoffshotgun"] = "רובה קצוץ", - - -- SMG & LMG - ["weapon_assaultsmg"] = "SMG תוקף", - ["weapon_combatmg"] = "MG לחימה", - ["weapon_combatmg_mk2"] = "MG לחימה MK2", - ["weapon_combatpdw"] = "PDW לחימה", - ["weapon_gusenberg"] = "גוזנברג מכשיר", - ["weapon_machinepistol"] = "אקדח מכונה", - ["weapon_mg"] = "MG", - ["weapon_microsmg"] = "SMG מיקרו", - ["weapon_minismg"] = "SMG מיני", - ["weapon_smg"] = "SMG", - ["weapon_smg_mk2"] = "SMG MK2", - ["weapon_raycarbine"] = "קרבין הלל הרשע", - - -- Rifles - ["weapon_advancedrifle"] = "רובה מתקדם", - ["weapon_assaultrifle"] = "רובה תוקף", - ["weapon_assaultrifle_mk2"] = "רובה תוקף MK2", - ["weapon_bullpuprifle"] = "רובה קטלב", - ["weapon_bullpuprifle_mk2"] = "רובה קטלב MK2", - ["weapon_carbinerifle"] = "רובה קרבין", - ["weapon_carbinerifle_mk2"] = "רובה קרבין MK2", - ["weapon_compactrifle"] = "רובה קומפקטי", - ["weapon_militaryrifle"] = "רובה צבאי", - ["weapon_specialcarbine"] = "קרבין מיוחד", - ["weapon_specialcarbine_mk2"] = "קרבין מיוחד MK2", - - -- Sniper - ["weapon_heavysniper"] = "צלף כבד", - ["weapon_heavysniper_mk2"] = "צלף כבד MK2", - ["weapon_marksmanrifle"] = "רובה צלף", - ["weapon_marksmanrifle_mk2"] = "רובה צלף MK2", - ["weapon_sniperrifle"] = "רובה צלף", - - -- Heavy / Launchers - ["weapon_compactlauncher"] = "משגר קומפקטי", - ["weapon_firework"] = "משגר זיקוקים", - ["weapon_grenadelauncher"] = "משגר רימונים", - ["weapon_hominglauncher"] = "משגר חוקר", - ["weapon_minigun"] = "מיניגאן", - ["weapon_railgun"] = "רובה מסילות", - ["weapon_rpg"] = "משגר רקטות", - ["weapon_rayminigun"] = "וידוומייקר", - - -- Criminal Enterprises DLC - ["weapon_metaldetector"] = "חיישן מתכת", - ["weapon_precisionrifle"] = "רובה מדויק", - ["weapon_tactilerifle"] = "רובה טקטי", - - -- Thrown - ["weapon_ball"] = "כדור בייסבול", - ["weapon_bzgas"] = "גז BZ", - ["weapon_flare"] = "זיקוק", - ["weapon_grenade"] = "רימון", - ["weapon_petrolcan"] = "קנקן דלק", - ["weapon_hazardcan"] = "קנקן דלק מסוכן", - ["weapon_molotov"] = "קוקטייל מולוטוב", - ["weapon_proxmine"] = "מוקש קרבה", - ["weapon_pipebomb"] = "פצצת צנרת", - ["weapon_snowball"] = "כדור שלג", - ["weapon_stickybomb"] = "רימון דביק", - ["weapon_smokegrenade"] = "רימון עשן", - - -- Special - ["weapon_fireextinguisher"] = "מטף כיבוי", - ["weapon_digiscanner"] = "סורק דיגיטלי", - ["weapon_garbagebag"] = "שק אשפה", - ["weapon_handcuffs"] = "כאסמים", - ["gadget_nightvision"] = "משקפי ראיית לילה", - ["gadget_parachute"] = "צניחה", - - -- Weapon Components - ["component_knuckle_base"] = "דגם בסיס", - ["component_knuckle_pimp"] = "הפימפ", - ["component_knuckle_ballas"] = "הבאלס", - ["component_knuckle_dollar"] = "המרוויח", - ["component_knuckle_diamond"] = "האבן", - ["component_knuckle_hate"] = "השונא", - ["component_knuckle_love"] = "האוהב", - ["component_knuckle_player"] = "השחקן", - ["component_knuckle_king"] = "המלך", - ["component_knuckle_vagos"] = "הוואגוס", - - ["component_luxary_finish"] = "סיום מפואר", - - ["component_handle_default"] = "ידית ברירת מחדל", - ["component_handle_vip"] = "ידית VIP", - ["component_handle_bodyguard"] = "ידית שומר גוף", - - ["component_vip_finish"] = "סיום VIP", - ["component_bodyguard_finish"] = "סיום שומר גוף", - - ["component_camo_finish"] = "סיום דיגיטלי", - ["component_camo_finish2"] = "סיום ציור מברשת", - ["component_camo_finish3"] = "סיום חורשתי", - ["component_camo_finish4"] = "סיום גולגולת", - ["component_camo_finish5"] = "סיום ססנטה נובה", - ["component_camo_finish6"] = "סיום פרסאוס", - ["component_camo_finish7"] = "סיום נמר", - ["component_camo_finish8"] = "סיום זברה", - ["component_camo_finish9"] = "סיום גיאומטרי", - ["component_camo_finish10"] = "סיום פיצוץ", - ["component_camo_finish11"] = "סיום פטריוטי", - - ["component_camo_slide_finish"] = "סיום דיגיטלי שקופה", - ["component_camo_slide_finish2"] = "סיום ציור מברשת שקופה", - ["component_camo_slide_finish3"] = "סיום חורשתי שקופה", - ["component_camo_slide_finish4"] = "סיום גולגולת שקופה", - ["component_camo_slide_finish5"] = "סיום ססנטה נובה שקופה", - ["component_camo_slide_finish6"] = "סיום פרסאוס שקופה", - ["component_camo_slide_finish7"] = "סיום נמר שקופה", - ["component_camo_slide_finish8"] = "סיום זברה שקופה", - ["component_camo_slide_finish9"] = "סיום גיאומטרי שקופה", - ["component_camo_slide_finish10"] = "סיום פיצוץ שקופה", - ["component_camo_slide_finish11"] = "סיום פטריוטי שקופה", - - ["component_clip_default"] = "מחסנית ברירת מחדל", - ["component_clip_extended"] = "מחסנית מורחבת", - ["component_clip_drum"] = "מחסנית תוף", - ["component_clip_box"] = "מחסנית קופסה", - - ["component_scope_holo"] = "מכ מכוון הולוגרפי", - ["component_scope_small"] = "מכוון קטן", - ["component_scope_medium"] = "מכוון בינוני", - ["component_scope_large"] = "מכוון גדול", - ["component_scope"] = "מכוון מותקן", - ["component_scope_advanced"] = "מכוון מתקדם", - ["component_ironsights"] = "מכוון מתכת", - - ["component_suppressor"] = "משתיק", - ["component_compensator"] = "פיצוי", - - ["component_muzzle_flat"] = "קצה חלק", - ["component_muzzle_tactical"] = "קצה טקטי", - ["component_muzzle_fat"] = "קצה שמני", - ["component_muzzle_precision"] = "קצה מדויק", - ["component_muzzle_heavy"] = "קצה כבד", - ["component_muzzle_slanted"] = "קצה מוטה", - ["component_muzzle_split"] = "קצה מחולק", - ["component_muzzle_squared"] = "קצה מרובע", - - ["component_flashlight"] = "פנס", - ["component_grip"] = "ידית", - - ["component_barrel_default"] = "חילוף ברירת מחדל", - ["component_barrel_heavy"] = "חילוף כבד", - - ["component_ammo_tracer"] = "כדורי עקיבה", - ["component_ammo_incendiary"] = "כדורי שריפה", - ["component_ammo_hollowpoint"] = "כדורי ריק", - ["component_ammo_fmj"] = "כדורי FMJ", - ["component_ammo_armor"] = "כדורי פריצת שריון", - ["component_ammo_explosive"] = "כדורי שריון מבעירים", - - ["component_shells_default"] = "קליעים ברירת מחדל", - ["component_shells_incendiary"] = "קליעים של נשיפת הדרקון", - ["component_shells_armor"] = "קליעים פלדתיים", - ["component_shells_hollowpoint"] = "קליעים של הטילים", - ["component_shells_explosive"] = "קליעים מתפצלים", - - -- Weapon Ammo - ["ammo_rounds"] = "סיבוב(ים)", - ["ammo_shells"] = "קליע(ים)", - ["ammo_charge"] = "תשלום", - ["ammo_petrol"] = "גלונים של דלק", - ["ammo_firework"] = "זיקוק(ים)", - ["ammo_rockets"] = "רקטה(ות)", - ["ammo_grenadelauncher"] = "רימון(ים)", - ["ammo_grenade"] = "רימון(ים)", - ["ammo_stickybomb"] = "פצצה(ות)", - ["ammo_pipebomb"] = "פצצה(ות)", - ["ammo_smokebomb"] = "פצצה(ות)", - ["ammo_molotov"] = "קוקטייל(ים)", - ["ammo_proxmine"] = "מוקש(ים)", - ["ammo_bzgas"] = "פחית(ות)", - ["ammo_ball"] = "כדור(ים)", - ["ammo_snowball"] = "כדור שלג", - ["ammo_flare"] = "זיקוק(ים)", - ["ammo_flaregun"] = "זיקוק(ים)", - - -- Weapon Tints - ["tint_default"] = "עור ברירת מחדל", - ["tint_green"] = "עור ירוק", - ["tint_gold"] = "עור זהב", - ["tint_pink"] = "עור ורוד", - ["tint_army"] = "עור צבאי", - ["tint_lspd"] = "עור כחול", - ["tint_orange"] = "עור כתום", - ["tint_platinum"] = "עור פלטינה", -} - - - - diff --git a/[core]/es_extended/locales/hu.lua b/[core]/es_extended/locales/hu.lua index 02feb4ed6..b5336610f 100644 --- a/[core]/es_extended/locales/hu.lua +++ b/[core]/es_extended/locales/hu.lua @@ -52,7 +52,6 @@ Locales["hu"] = { ["act_imp"] = "Érvénytelen mennyiség", ["in_vehicle"] = "Nem tudod átadni, mivel benne ül a jármüben", - ["not_in_vehicle"] = "Cannot Perform Action, Player isn't in a vehicle", -- Commands ["command_bring"] = "Játékos magadhoz teleportálása", @@ -60,9 +59,6 @@ Locales["hu"] = { ["command_car_car"] = "Jármű név vagy hash", ["command_cardel"] = "Közeli járművek törlése", ["command_cardel_radius"] = "Megadott radiusban lévő járművek törlése", - ["command_repair"] = "Repair your vehicle", - ["command_repair_success"] = "Successfully repaired vehicle", - ["command_repair_success_target"] = "An admin repaired your vehicle", ["command_clear"] = "Chat ürítése", ["command_clearall"] = "Chat ürítése minden játékosnál", ["command_clearinventory"] = "Minden tárgy törlése a játékos inventoryból", @@ -204,7 +200,6 @@ Locales["hu"] = { ["weapon_militaryrifle"] = "Military Rifle", ["weapon_specialcarbine"] = "Special Carbine", ["weapon_specialcarbine_mk2"] = "Special Carbine MK2", - ["weapon_heavyrifle"] = "Heavy Rifle", -- Not Translated -- Sniper ["weapon_heavysniper"] = "Heavy Sniper", diff --git a/[core]/es_extended/locales/it.lua b/[core]/es_extended/locales/it.lua index 227978cc2..67b59bb74 100644 --- a/[core]/es_extended/locales/it.lua +++ b/[core]/es_extended/locales/it.lua @@ -52,7 +52,6 @@ Locales["it"] = { ["act_imp"] = "Non puoi farlo", ["in_vehicle"] = "Non puoi farlo, il giocatore è in un veicolo", - ["not_in_vehicle"] = "Non puoi farlo, il player non è in un veicolo", -- Commands ['command_bring'] = 'Porta il giocatore da te', @@ -60,9 +59,6 @@ Locales["it"] = { ['command_car_car'] = 'Modello o hash veicolo', ['command_cardel'] = 'Rimuovi i veicoli nelle prossimità', ['command_cardel_radius'] = 'Rimuovi i veicoli nel raggio specificato', - ['command_repair'] = 'Ripara il tuo veicolo', - ['command_repair_success'] = 'Hai riparato il veicolo con successo', - ['command_repair_success_target'] = 'Un admin ha riparato la tua macchina', ['command_clear'] = 'Pulisci la chat testuale', ['command_clearall'] = 'Pulisci la chat testuale per tutti i giocatori', ['command_clearinventory'] = 'Rimuovi tutti gli oggetti dall\' inventario del giocatore', @@ -73,10 +69,6 @@ Locales["it"] = { ['command_giveaccountmoney_account'] = 'Account a cui aggiungere', ['command_giveaccountmoney_amount'] = 'Quantità da aggiungere', ['command_giveaccountmoney_invalid'] = 'Nome account non valido', - ['command_removeaccountmoney'] = 'Rimuovi soldi da un account specifico', - ['command_removeaccountmoney_account'] = 'Account a cui togliere', - ['command_removeaccountmoney_amount'] = 'Quantità da rimuovere', - ['command_removeaccountmoney_invalid'] = 'Nome account non valido', ['command_giveitem'] = 'Dai un oggetto ad un giocatore', ['command_giveitem_item'] = 'Nome oggetto', ['command_giveitem_count'] = 'Quantità', @@ -208,7 +200,6 @@ Locales["it"] = { ["weapon_militaryrifle"] = "Fucile militare", ["weapon_specialcarbine"] = "Carabina speciale", ["weapon_specialcarbine_mk2"] = "Carabina speciale MK2", - ["weapon_heavyrifle"] = "Fucile pesante", -- Sniper ["weapon_heavysniper"] = "Cecchino pesante", @@ -233,10 +224,10 @@ Locales["it"] = { ["weapon_tactilerifle"] = "Carabina di servizio", -- Drug Wars DLC - ['weapon_candycane'] = 'Bastoncino di zucchero', - ['weapon_acidpackage'] = 'Pacco di acidi', - ['weapon_pistolxm3'] = 'Pistola WM 29', - ['weapon_railgunxm3'] = 'Railgun', + ['weapon_candycane'] = 'Candy Cane', -- not translated + ['weapon_acidpackage'] = 'Acid Package', -- not translated + ['weapon_pistolxm3'] = 'WM 29 Pistol', -- not translated + ['weapon_railgunxm3'] = 'Railgun', -- not translated -- Thrown ["weapon_ball"] = "Palla", diff --git a/[core]/es_extended/locales/nl.lua b/[core]/es_extended/locales/nl.lua index 938303f52..af4b920f3 100644 --- a/[core]/es_extended/locales/nl.lua +++ b/[core]/es_extended/locales/nl.lua @@ -1,372 +1,372 @@ Locales["nl"] = { - -- Inventory - ["inventory"] = "Inventaris ( Gewicht %s / %s )", - ["use"] = "Gebruik", - ["give"] = "Geef", - ["remove"] = "Gooi", - ["return"] = "Terug", - ["give_to"] = "Geef aan", - ["amount"] = "Aantal", - ["giveammo"] = "Geef munitie", - ["amountammo"] = "Hoeveelheid munitie", - ["noammo"] = "Niet genoeg munitie!", - ["gave_item"] = "%sx %s gegeven aan %s", - ["received_item"] = "%sx %s ontvangen van %s", - ["gave_weapon"] = "%s gegeven aan %s", - ["gave_weapon_ammo"] = "~o~%sx %s gegeven voor een %s aan %s", - ["gave_weapon_withammo"] = "%s gegeven met ~o~%sx %s aan %s", - ["gave_weapon_hasalready"] = "%s heeft al een %s", - ["gave_weapon_noweapon"] = "%s heeft dat wapen niet", - ["received_weapon"] = "%s ontvangen van %s", - ["received_weapon_ammo"] = "~o~%sx %s ontvangen voor je %s van %s", - ["received_weapon_withammo"] = "%s ontvangen met ~o~%sx %s van %s", - ["received_weapon_hasalready"] = "%s heeft geprobeerd je een %s te geven, maar je hebt dat wapen al.", - ["received_weapon_noweapon"] = "%s heeft geprobeerd je ammo te geven voor een %s, maar je hebt dit wapen niet", - ["gave_account_money"] = "€%s (%s) gegeven aan %s", - ["received_account_money"] = "€%s (%s) ontvangen van %s", - ["amount_invalid"] = "Ongeldige hoeveelheid", - ["players_nearby"] = "Geen spelers in de buurt", - ["ex_inv_lim"] = "Kan actie niet uitvoeren, overschrijdt max. gewicht van %s", - ["imp_invalid_quantity"] = "Kan actie niet uitvoeren, de hoeveelheid is ongeldig", - ["imp_invalid_amount"] = "Kan actie niet uitvoeren, het aantal is ongeldig", - ["threw_standard"] = "%sx %s weggegooid", - ["threw_account"] = "€%s %s weggegooid", - ["threw_weapon"] = "%s weggegooid", - ["threw_weapon_ammo"] = "%s met ~o~%sx %s weggegooid", - ["threw_weapon_already"] = "Je hebt dit wapen al !", - ["threw_cannot_pickup"] = "Inventaris is vol, je kan dit niet oppakken!", - ["threw_pickup_prompt"] = "Druk op E om op te pakken", - - -- Key mapping - ["keymap_showinventory"] = "Laat inventaris zien", - - -- Salary related - ["received_salary"] = "Je bent betaald: €%s", - ["received_help"] = "Je hebt je uitkering gekregen: €%s", - ["company_nomoney"] = "Het bedrijf waar je bij werkt heeft te weinig geld om je uit te betalen.", - ["received_paycheck"] = "salaris ontvangen", - ["bank"] = "Maze Bank", - ["account_bank"] = "Bank", - ["account_black_money"] = "Zwart geld", - ["account_money"] = "Contant", - - ["act_imp"] = "Kan actie niet uitvoeren", - ["in_vehicle"] = "Kan actie niet uitvoeren, de speler zit in een voertuig.", - - -- Commands - ['command_bring'] = 'Breng speler naar jou', - ['command_car'] = 'Spawn een voertuig', - ['command_car_car'] = 'Voertuig model of hash', - ['command_cardel'] = 'Verwijder voertuigen in straal', - ['command_cardel_radius'] = 'Verwijderd alle voertuigen in gewenste straal', - ['command_clear'] = 'Verwijder chat berichten', - ['command_clearall'] = 'Verwijder chat berichten voor alle spelers', - ['command_clearinventory'] = 'Verwijder alle items van een speler zijn inventory', - ['command_clearloadout'] = 'Verwijder alle wapens die een speler heeft', - ['command_freeze'] = 'Freeze een speler', - ['command_unfreeze'] = 'Unfreeze een speler', - ['command_giveaccountmoney'] = 'Geef geld aan een rekening', - ['command_giveaccountmoney_account'] = 'Account om aan toe te voegen', - ['command_giveaccountmoney_amount'] = 'Bedrag om toe te voegen', - ['command_giveaccountmoney_invalid'] = 'Account Naam ongeldig', - ['command_giveitem'] = 'Geef speler een item', - ['command_giveitem_item'] = 'Item naam', - ['command_giveitem_count'] = 'Hoeveelheid', - ['command_giveweapon'] = 'Geef de speler een wapen', - ['command_giveweapon_weapon'] = 'Wapen naam', - ['command_giveweapon_ammo'] = 'Munitie Hoeveelheid', - ['command_giveweapon_hasalready'] = 'Speler heeft dit wapen al', - ['command_giveweaponcomponent'] = 'Geef wapen component aan speler', - ['command_giveweaponcomponent_component'] = 'Component naam', - ['command_giveweaponcomponent_invalid'] = 'Ongeldig wapen component', - ['command_giveweaponcomponent_hasalready'] = 'De speler heeft dit wapen component al', - ['command_giveweaponcomponent_missingweapon'] = 'De speler heeft dit wapen niet', - ['command_goto'] = 'Teleporteer jezelf naar een speler', - ['command_kill'] = 'Vermoord een speler', - ['command_save'] = 'Slaag een speler zijn spelerdata geforceerd op', - ['command_saveall'] = 'Slaag iedereen zijn spelerdata geforceerd op', - ['command_setaccountmoney'] = 'Stel geld in op een account', - ['command_setaccountmoney_amount'] = 'Hoeveelheid', - ['command_setcoords'] = 'Telepeer naar coordinaten', - ['command_setcoords_x'] = 'X waarde', - ['command_setcoords_y'] = 'Y waarde', - ['command_setcoords_z'] = 'Z waarde', - ['command_setjob'] = 'Zet een speler zijn / haar job', - ['command_setjob_job'] = 'Naam', - ['command_setjob_grade'] = 'Job grade', - ['command_setjob_invalid'] = 'De job, grade of beide zijn ongeldig', - ['command_setgroup'] = 'Stel een toestemmingsgroep voor spelers in', - ['command_setgroup_group'] = 'Naam van groep', - ['commanderror_argumentmismatch'] = 'Ongeldig aantal argumenten (geslaagd %s, gezocht %s)', - ['commanderror_argumentmismatch_number'] = 'Ongeldig argument #%s gegevenstype (doorgegeven string, gewenst nummer)', - ['commanderror_argumentmismatch_string'] = 'Invalid Argument #%s data type (doorgegeven string, gewenst nummer)', - ['commanderror_invaliditem'] = 'Ongeldig item', - ['commanderror_invalidweapon'] = 'Ongeldig wapen', - ['commanderror_console'] = 'Command kan niet worden uitgevoerd vanaf console.', - ['commanderror_invalidcommand'] = 'Ongeldig commando - /%s', - ['commanderror_invalidplayerid'] = 'Opgegeven speler is niet online', - ['commandgeneric_playerid'] = 'Speler server id', - ['command_giveammo_noweapon_found'] = '%s heeft dat wapen niet', - ['command_giveammo_weapon'] = 'Wapen naam', - ['command_giveammo_ammo'] = 'Munitie Hoeveelheid', - ['tpm_nowaypoint'] = 'Geen navigatie ingesteld.', - ['tpm_success'] = 'Successvol geteleporteerd', - - ['noclip_message'] = 'Noclip is %s', - ['enabled'] = '~g~aangezet~s~', - ['disabled'] = '~r~uitgezet~s~', - - -- Locale settings - ["locale_digit_grouping_symbol"] = ",", - ["locale_currency"] = "€%s", - - -- Weapons - - -- Melee - ["weapon_dagger"] = "Dolk", - ["weapon_bat"] = "Knuppel", - ["weapon_battleaxe"] = "Gevechtsbijl", - ["weapon_bottle"] = "Fles", - ["weapon_crowbar"] = "Koevoet", - ["weapon_flashlight"] = "Zaklamp", - ["weapon_golfclub"] = "Golfclub", - ["weapon_hammer"] = "Hamer", - ["weapon_hatchet"] = "Bijl", - ["weapon_knife"] = "Mes", - ["weapon_knuckle"] = "Boksbeugel", - ["weapon_machete"] = "Machete", - ["weapon_nightstick"] = "Wapenstok", - ["weapon_wrench"] = "Pijpsleutel", - ["weapon_poolcue"] = "Biljart Keu", - ["weapon_stone_hatchet"] = "Steenbijl", - ["weapon_switchblade"] = "Stiletto", - - -- Handguns - ["weapon_appistol"] = "AP-pistool", - ["weapon_ceramicpistol"] = "Keramische pistool", - ["weapon_combatpistol"] = "Gevechtspistool", - ["weapon_doubleaction"] = "Revolver met dubbele actie", - ["weapon_navyrevolver"] = "Marine Revolver", - ["weapon_flaregun"] = "Noodsignaalpistool", - ["weapon_gadgetpistol"] = "Gadgetpistool", - ["weapon_heavypistol"] = "Zwaar pistool", - ["weapon_revolver"] = "Zware revolver", - ["weapon_revolver_mk2"] = "Zware revolver MK2", - ["weapon_marksmanpistol"] = "Marksman-pistool", - ["weapon_pistol"] = "Pistool", - ["weapon_pistol_mk2"] = "Pistool MK2", - ["weapon_pistol50"] = "Pistool .50", - ["weapon_snspistol"] = "SNS-pistool", - ["weapon_snspistol_mk2"] = "SNS-pistool MK2", - ["weapon_stungun"] = "Taser", - ["weapon_raypistol"] = "Up-N-Atomizer", - ["weapon_vintagepistol"] = "Vintage Pistool", - - -- Shotguns - ["weapon_assaultshotgun"] = "Aanvalsgeweer", - ["weapon_autoshotgun"] = "Automatisch jachtgeweer", - ["weapon_bullpupshotgun"] = "Bullpup Shotgun", - ["weapon_combatshotgun"] = "Gevechtsgeweer", - ["weapon_dbshotgun"] = "Dubbelloops jachtgeweer", - ["weapon_heavyshotgun"] = "Zwaar jachtgeweer", - ["weapon_musket"] = "Musket", - ["weapon_pumpshotgun"] = "Pompgeweer", - ["weapon_pumpshotgun_mk2"] = "Pump Shotgun MK2", - ["weapon_sawnoffshotgun"] = "Afgezaagd jachtgeweer", - - -- SMG & LMG - ["weapon_assaultsmg"] = "Aanval SMG", - ["weapon_combatmg"] = "Gevecht MG", - ["weapon_combatmg_mk2"] = "Combat MG MK2", - ["weapon_combatpdw"] = "Combat PDW", - ["weapon_gusenberg"] = "Gusenberg-veger", - ["weapon_machinepistol"] = "Machinepistool", - ["weapon_mg"] = "MG", - ["weapon_microsmg"] = "Micro-SMG", - ["weapon_minismg"] = "Mini-SMG", - ["weapon_smg"] = "SMG", - ["weapon_smg_mk2"] = "SMG MK2", - ["weapon_raycarbine"] = "Onheilige Hellbringer", - - -- Rifles - ["weapon_advancedrifle"] = "Geavanceerd geweer", - ["weapon_assaultrifle"] = "Aanvalsgeweer", - ["weapon_assaultrifle_mk2"] = "Aanvalsgeweer MK2", - ["weapon_bullpuprifle"] = "Bullpup-geweer", - ["weapon_bullpuprifle_mk2"] = "Bullpup-geweer MK2", - ["weapon_carbinerifle"] = "Kabinet geweer", - ["weapon_carbinerifle_mk2"] = "Kabinet geweer MK2", - ["weapon_compactrifle"] = "Compact geweer", - ["weapon_militaryrifle"] = "Militair geweer", - ["weapon_specialcarbine"] = "Speciale karabijn", - ["weapon_specialcarbine_mk2"] = "Speciale karabijn MK2", - - -- Sniper - ["weapon_heavysniper"] = "Zware sluipschutter", - ["weapon_heavysniper_mk2"] = "Zware Sniper MK2", - ["weapon_marksmanrifle"] = "Schuttersgeweer", - ["weapon_marksmanrifle_mk2"] = "Schuttersgeweer MK2", - ["weapon_sniperrifle"] = "Sniper Rifle", - - -- Heavy / Launchers - ["weapon_compactlauncher"] = "Compacte Launcher", - ["weapon_firework"] = "Vuurwerkstarter", - ["weapon_grenadelauncher"] = "Granaatwerper", - ["weapon_hominglauncher"] = "Homing Launcher", - ["weapon_minigun"] = "Minigun", - ["weapon_railgun"] = "Spoorgeweer", - ["weapon_rpg"] = "Raketwerper", - ["weapon_rayminigun"] = "Weduwemaker", - - -- Criminal Enterprises DLC - ["weapon_metaldetector"] = "Metaal Detector", - ["weapon_precisionrifle"] = "Precisiegeweer", - ["weapon_tactilerifle"] = "Service Carbine", - - -- Drug Wars DLC - ["weapon_candycane"] = "Snoep stok", - ["weapon_acidpackage"] = "LSD pakket", - ["weapon_pistolxm3"] = "WM 29 Pistool", - ["weapon_railgunxm3"] = "Railgun", - - -- Thrown - ["weapon_ball"] = "Honkbal", - ["weapon_bzgas"] = "BZ-gas", - ["weapon_flare"] = "Flare", - ["weapon_grenade"] = "Granaat", - ["weapon_petrolcan"] = "Jerrycan", - ["weapon_hazardcan"] = "Gevaarlijke jerrycan", - ["weapon_molotov"] = "Molotovcocktail", - ["weapon_proxmine"] = "Nabijheidsmijn", - ["weapon_pipebomb"] = "Pijpbom", - ["weapon_snowball"] = "Sneeuwbal", - ["weapon_stickybomb"] = "Kleefbom", - ["weapon_smokegrenade"] = "Traangas", - - -- Special - ["weapon_firebluser"] = "Brandblusser", - ["weapon_digiscanner"] = "Digitale scanner", - ["weapon_garbagebag"] = "Vuilniszak", - ["weapon_handcuffs"] = "Handboeien", - ["gadget_nightvision"] = "Nachtzicht", - ["gadget_parachute"] = "parachute", - - -- Weapon Components - ["component_knuckle_base"] = "basismodel", - ["component_knuckle_pimp"] = "de pooier", - ["component_knuckle_ballas"] = "de ballen", - ["component_knuckle_dollar"] = "de Hustler", - ["component_knuckle_diamond"] = "de rots", - ["component_knuckle_hate"] = "de Hater", - ["component_knuckle_love"] = "de minnaar", - ["component_knuckle_player"] = "de speler", - ["component_knuckle_king"] = "de koning", - ["component_knuckle_vagos"] = "de Vagos", - - ["component_luxary_finish"] = "luxe wapenafwerking", - - ["component_handle_default"] = "standaard handvat", - ["component_handle_vip"] = "VIP-handvat", - ["component_handle_bodyguard"] = "bodyguard-handvat", - - ["component_vip_finish"] = "VIP Finish", - ["component_bodyguard_finish"] = "bodyguard Finish", - - ["component_camo_finish"] = "digitale camouflage", - ["component_camo_finish2"] = "penseelstreek camouflage", - ["component_camo_finish3"] = "bos camouflage", - ["component_camo_finish4"] = "schedel camouflage", - ["component_camo_finish5"] = "sessanta Nove camouflage", - ["component_camo_finish6"] = "perseus camouflage", - ["component_camo_finish7"] = "luipaard camouflage", - ["component_camo_finish8"] = "zebracamouflage", - ["component_camo_finish9"] = "geometrische camouflage", - ["component_camo_finish10"] = "boom camouflage", - ["component_camo_finish11"] = "patriottische camouflage", - - ["component_camo_slide_finish"] = "digitale diacamouflage", - ["component_camo_slide_finish2"] = "penseelstreek Dia Camo", - ["component_camo_slide_finish3"] = "bos Slide camouflage", - ["component_camo_slide_finish4"] = "schedelschuifcamouflage", - ["component_camo_slide_finish5"] = "sessanta Nove Dia camouflage", - ["component_camo_slide_finish6"] = "perseus diacamouflage", - ["component_camo_slide_finish7"] = "luipaard Slide camouflage", - ["component_camo_slide_finish8"] = "zebra Slide camouflage", - ["component_camo_slide_finish9"] = "geometrische diacamouflage", - ["component_camo_slide_finish10"] = "boom Slide camouflage", - ["component_camo_slide_finish11"] = "patriottische diacamouflage", - - ["component_clip_default"] = "standaard magazijn", - ["component_clip_extended"] = "uitgebreid magazijn", - ["component_clip_drum"] = "drum magazijn", - ["component_clip_box"] = "box magazijn", - - ["component_scope_holo"] = "holografisch bereik", - ["component_scope_small"] = "klein bereik", - ["component_scope_medium"] = "gemiddeld bereik", - ["component_scope_large"] = "groot bereik", - ["component_scope"] = "gemonteerde scope", - ["component_scope_advanced"] = "geavanceerd bereik", - ["component_ironsights"] = "ironsights", - - ["component_suppressor"] = "suppressor", - ["component_compensator"] = "compensator", - - ["component_muzzle_flat"] = "platte mondingsrem", - ["component_muzzle_tactical"] = "tactische mondingsrem", - ["component_muzzle_fat"] = "fat-end mondingsrem", - ["component_muzzle_precision"] = "precisie mondingsrem", - ["component_muzzle_heavy"] = "zware mondingsrem", - ["component_muzzle_slanted"] = "schuine mondingsrem", - ["component_muzzle_split"] = "gespleten mondingsrem", - ["component_muzzle_squared"] = "kwadraat mondingsrem", - - ["component_flashlight"] = "zaklamp", - ["component_grip"] = "grip", - - ["component_barrel_default"] = "standaard handvat", - ["component_barrel_heavy"] = "zware handvat", - - ["component_ammo_tracer"] = "tracermunitie", - ["component_ammo_incendiary"] = "brandgevaarlijke munitie", - ["component_ammo_hollowpoint"] = "hollowpoint munitie", - ["component_ammo_fmj"] = "fMJ-munitie", - ["component_ammo_armor"] = "pantser piercing munitie", - ["component_ammo_explosive"] = "pantserpiercing brandgevaarlijke munitie", - - ["component_shells_default"] = "standaard shells", - ["component_shells_incendiary"] = "draken ademschelpen", - ["component_shells_armor"] = "stalen Buckshot Shells", - ["component_shells_hollowpoint"] = "flechette schelpen", - ["component_shells_explosive"] = "explosieve slakkenhuizen", - - -- Weapon Ammo - ["ammo_rounds"] = "ronde(n)", - ["ammo_shells"] = "huls/(zen)", - ["ammo_charge"] = "charge", - ["ammo_petrol"] = "liters brandstof", - ["ammo_firework"] = "vuurwerkpijl(en)", - ["ammo_rockets"] = "raket(ten)", - ["ammo_grenadelauncher"] = "granaat(en)", - ["ammo_grenade"] = "granaat(en)", - ["ammo_stickybomb"] = "bom(men)", - ["ammo_pipebomb"] = "bom(men)", - ["ammo_smokebomb"] = "bom(men)", - ["ammo_molotov"] = "cocktail(s)", - ["ammo_proxmine"] = "mijn(en)", - ["ammo_bzgas"] = "blik(ken)", - ["ammo_ball"] = "bal(len)", - ["ammo_snowball"] = "sneeuwbal(len)", - ["ammo_flare"] = "flare(s)", - ["ammo_flaregun"] = "flare(s)", - - -- Weapon Tints - ["tint_default"] = "standaard skin", - ["tint_green"] = "groene skin", - ["tint_gold"] = "goude skin", - ["tint_pink"] = "roze skin", - ["tint_army"] = "legerprint", - ["tint_lspd"] = "blauwe skin", - ["tint_orange"] = "oranje skin", - ["tint_platinum"] = "platina skin", + -- Inventory + ["inventory"] = "Inventaris ( Gewicht %s / %s )", + ["use"] = "Gebruik", + ["give"] = "Geef", + ["remove"] = "Gooi", + ["return"] = "Terug", + ["give_to"] = "Geef aan", + ["amount"] = "Aantal", + ["giveammo"] = "Geef munitie", + ["amountammo"] = "Hoeveelheid munitie", + ["noammo"] = "Niet genoeg!", + ["gave_item"] = "%sx %s gegeven aan %s", + ["received_item"] = "%sx %s ontvangen van %s", + ["gave_weapon"] = "%s gegeven aan %s", + ["gave_weapon_ammo"] = "~o~%sx %s gegeven voor een %s aan %s", + ["gave_weapon_withammo"] = "%s gegeven met ~o~%sx %s aan %s", + ["gave_weapon_hasalready"] = "%s heeft al een %s", + ["gave_weapon_noweapon"] = "%s heeft dat wapen niet", + ["received_weapon"] = "%s ontvangen van %s", + ["received_weapon_ammo"] = "~o~%sx %s ontvangen voor je %s van %s", + ["received_weapon_withammo"] = "%s ontvangen met ~o~%sx %s van %s", + ["received_weapon_hasalready"] = "%s heeft geprobeerd je een %s te geven, maar je hebt dat wapen al.", + ["received_weapon_noweapon"] = "%s heeft geprobeerd je ammo te geven voor een %s, maar je hebt dit wapen niet", + ["gave_account_money"] = "€%s (%s) gegeven aan %s", + ["received_account_money"] = "€%s (%s) ontvangen van %s", + ["amount_invalid"] = "Ongeldige hoeveelheid", + ["players_nearby"] = "Geen spelers in de buurt", + ["ex_inv_lim"] = "Kan actie niet uitvoeren, overschrijdt max. gewicht van %s", + ["imp_invalid_quantity"] = "Kan actie niet uitvoeren, de hoeveelheid is ongeldig", + ["imp_invalid_amount"] = "Kan actie niet uitvoeren, het aantal is ongeldig", + ["threw_standard"] = "%sx %s weggegooid", + ["threw_account"] = "€%s %s weggegooid", + ["threw_weapon"] = "%s weggegooid", + ["threw_weapon_ammo"] = "%s met ~o~%sx %s weggegooid", + ["threw_weapon_already"] = "Je hebt dit wapen al !", + ["threw_cannot_pickup"] = "Inventoraris is vol, Kan niet oppakken!", + ["threw_pickup_prompt"] = "Druk op E om op te pakken", + + -- Key mapping + ["keymap_showinventory"] = "Laat inventaris zien", + + -- Salary related + ["received_salary"] = "Je bent betaald: €%s", + ["received_help"] = "Je hebt je uitkering gekregen: €%s", + ["company_nomoney"] = "Het bedrijf waar je bij werkt heeft te weinig geld om je uit te betalen.", + ["received_paycheck"] = "salaris ontvangen", + ["bank"] = "Maze Bank", + ["account_bank"] = "Bank", + ["account_black_money"] = "Zwart geld", + ["account_money"] = "Cash", + + ["act_imp"] = "Kan actie niet uitvoeren", + ["in_vehicle"] = "Kan actie niet uitvoeren, de speler zit in een voertuig.", + + -- Commands + ['command_bring'] = 'Breng speler naar jou', + ['command_car'] = 'Spawn een voertuig', + ['command_car_car'] = 'Voertuig model of hash', + ['command_cardel'] = 'Verwijder voertuigen in straal', + ['command_cardel_radius'] = 'Verwijderd alle voertuigen in gewenste straal', + ['command_clear'] = 'Verwijder chat berichten', + ['command_clearall'] = 'Verwijder chat berichten voor alle spelers', + ['command_clearinventory'] = 'Verwijder alle items van een speler zijn inventory', + ['command_clearloadout'] = 'Verwijder alle wapens die een speler heeft', + ['command_freeze'] = 'Freeze een speler', + ['command_unfreeze'] = 'Unfreeze een speler', + ['command_giveaccountmoney'] = 'Geef geld aan een rekening', + ['command_giveaccountmoney_account'] = 'Account om aan toe te voegen', + ['command_giveaccountmoney_amount'] = 'Bedrag om toe te voegen', + ['command_giveaccountmoney_invalid'] = 'Account Naam ongeldig', + ['command_giveitem'] = 'Geef speler een item', + ['command_giveitem_item'] = 'Item naam', + ['command_giveitem_count'] = 'Hoeveelheid', + ['command_giveweapon'] = 'Geef de speler een wapen', + ['command_giveweapon_weapon'] = 'Wapen naam', + ['command_giveweapon_ammo'] = 'Ammo Hoeveelheid', + ['command_giveweapon_hasalready'] = 'Speler heeft dit wapen al', + ['command_giveweaponcomponent'] = 'Geef wapen component aan speler', + ['command_giveweaponcomponent_component'] = 'Component naam', + ['command_giveweaponcomponent_invalid'] = 'Ongeldig wapen component', + ['command_giveweaponcomponent_hasalready'] = 'De speler heeft dit wapen component al', + ['command_giveweaponcomponent_missingweapon'] = 'De speler heeft dit wapen niet', + ['command_goto'] = 'Teleporteer jezelf naar een speler', + ['command_kill'] = 'Vermoord een speler', + ['command_save'] = 'Slaag een speler zijn spelerdata geforceerd op', + ['command_saveall'] = 'Slaag iedereen zijn spelerdata geforceerd op', + ['command_setaccountmoney'] = 'Stel geld in op een account', + ['command_setaccountmoney_amount'] = 'Amount', + ['command_setcoords'] = 'Telepeer naar coordinaten', + ['command_setcoords_x'] = 'X waarde', + ['command_setcoords_y'] = 'Y waarde', + ['command_setcoords_z'] = 'Z waarde', + ['command_setjob'] = 'Zet een speler zijn / haar job', + ['command_setjob_job'] = 'Naam', + ['command_setjob_grade'] = 'Job grade', + ['command_setjob_invalid'] = 'De job, grade of beide zijn ongeldig', + ['command_setgroup'] = 'Stel een toestemmingsgroep voor spelers in', + ['command_setgroup_group'] = 'Naam van groep', + ['commanderror_argumentmismatch'] = 'Ongeldig aantal argumenten (geslaagd %s, gezocht %s)', + ['commanderror_argumentmismatch_number'] = 'Ongeldig argument #%s gegevenstype (doorgegeven string, gewenst nummer)', + ['commanderror_argumentmismatch_string'] = 'Invalid Argument #%s data type (passed number, wanted string)', + ['commanderror_invaliditem'] = 'Ongeldig item', + ['commanderror_invalidweapon'] = 'Ongeldig wapen', + ['commanderror_console'] = 'Command kan niet worden uitgevoerd vanaf console.', + ['commanderror_invalidcommand'] = 'Ongeldig commando - /%s', + ['commanderror_invalidplayerid'] = 'Opgegeven speler is niet online', + ['commandgeneric_playerid'] = 'Speler server id', + ['command_giveammo_noweapon_found'] = '%s heeft dat wapen niet', + ['command_giveammo_weapon'] = 'Wapen naam', + ['command_giveammo_ammo'] = 'Ammo Hoeveelheid', + ['tpm_nowaypoint'] = 'Geen waypoint gezet.', + ['tpm_success'] = 'Successvol geteleporteerd', + + ['noclip_message'] = 'Noclip is %s', + ['enabled'] = '~g~aangezet~s~', + ['disabled'] = '~r~uitgezet~s~', + + -- Locale settings + ["locale_digit_grouping_symbol"] = ",", + ["locale_currency"] = "€%s", + + -- Weapons + + -- Melee + ["weapon_dagger"] = "Dolk", + ["weapon_bat"] = "Knuppel", + ["weapon_battleaxe"] = "Gevechtsbijl", + ["weapon_bottle"] = "Fles", + ["weapon_crowbar"] = "Koevoet", + ["weapon_flashlight"] = "Zaklamp", + ["weapon_golfclub"] = "Golfclub", + ["weapon_hammer"] = "Hamer", + ["weapon_hatchet"] = "Bijl", + ["weapon_knife"] = "Mes", + ["weapon_knuckle"] = "Knuckledusters", + ["weapon_machete"] = "Machete", + ["weapon_nightstick"] = "Nightstick", + ["weapon_wrench"] = "Pijpsleutel", + ["weapon_poolcue"] = "Pool Cue", + ["weapon_stone_hatchet"] = "Steenbijl", + ["weapon_switchblade"] = "Switchblade", + + -- Handguns + ["weapon_appistol"] = "AP-pistool", + ["weapon_ceramicpistol"] = "Keramische pistool", + ["weapon_combatpistol"] = "Gevechtspistool", + ["weapon_doubleaction"] = "Revolver met dubbele actie", + ["weapon_navyrevolver"] = "Marine Revolver", + ["weapon_flaregun"] = "Flaregun", + ["weapon_gadgetpistol"] = "Gadgetpistool", + ["weapon_heavypistol"] = "Zwaar pistool", + ["weapon_revolver"] = "Zware revolver", + ["weapon_revolver_mk2"] = "Zware revolver MK2", + ["weapon_marksmanpistol"] = "Marksman-pistool", + ["weapon_pistol"] = "Pistool", + ["weapon_pistol_mk2"] = "Pistool MK2", + ["weapon_pistol50"] = "Pistool .50", + ["weapon_snspistol"] = "SNS-pistool", + ["weapon_snspistol_mk2"] = "SNS-pistool MK2", + ["weapon_stungun"] = "Taser", + ["weapon_raypistol"] = "Up-N-Atomizer", + ["weapon_vintagepistol"] = "Vintage Pistool", + + -- Shotguns + ["weapon_assaultshotgun"] = "Aanvalsgeweer", + ["weapon_autoshotgun"] = "Automatisch jachtgeweer", + ["weapon_bullpupshotgun"] = "Bullpup Shotgun", + ["weapon_combatshotgun"] = "Gevechtsgeweer", + ["weapon_dbshotgun"] = "Dubbelloops jachtgeweer", + ["weapon_heavyshotgun"] = "Zwaar jachtgeweer", + ["weapon_musket"] = "Musket", + ["weapon_pumpshotgun"] = "Pompgeweer", + ["weapon_pumpshotgun_mk2"] = "Pump Shotgun MK2", + ["weapon_sawnoffshotgun"] = "Afgezaagd jachtgeweer", + + -- SMG & LMG + ["weapon_assaultsmg"] = "Aanval SMG", + ["weapon_combatmg"] = "Gevecht MG", + ["weapon_combatmg_mk2"] = "Combat MG MK2", + ["weapon_combatpdw"] = "Combat PDW", + ["weapon_gusenberg"] = "Gusenberg-veger", + ["weapon_machinepistol"] = "Machinepistool", + ["weapon_mg"] = "MG", + ["weapon_microsmg"] = "Micro-SMG", + ["weapon_minismg"] = "Mini-SMG", + ["weapon_smg"] = "SMG", + ["weapon_smg_mk2"] = "SMG MK2", + ["weapon_raycarbine"] = "Onheilige Hellbringer", + + -- Rifles + ["weapon_advancedrifle"] = "Geavanceerd geweer", + ["weapon_assaultrifle"] = "Aanvalsgeweer", + ["weapon_assaultrifle_mk2"] = "Aanvalsgeweer MK2", + ["weapon_bullpuprifle"] = "Bullpup-geweer", + ["weapon_bullpuprifle_mk2"] = "Bullpup-geweer MK2", + ["weapon_carbinerifle"] = "Kabinet geweer", + ["weapon_carbinerifle_mk2"] = "Kabinet geweer MK2", + ["weapon_compactrifle"] = "Compact geweer", + ["weapon_militaryrifle"] = "Militair geweer", + ["weapon_specialcarbine"] = "Speciale karabijn", + ["weapon_specialcarbine_mk2"] = "Speciale karabijn MK2", + + -- Sniper + ["weapon_heavysniper"] = "Zware sluipschutter", + ["weapon_heavysniper_mk2"] = "Zware Sniper MK2", + ["weapon_marksmanrifle"] = "Schuttersgeweer", + ["weapon_marksmanrifle_mk2"] = "Schuttersgeweer MK2", + ["weapon_sniperrifle"] = "Sniper Rifle", + + -- Heavy / Launchers + ["weapon_compactlauncher"] = "Compacte Launcher", + ["weapon_firework"] = "Vuurwerkstarter", + ["weapon_grenadelauncher"] = "Granaatwerper", + ["weapon_hominglauncher"] = "Homing Launcher", + ["weapon_minigun"] = "Minigun", + ["weapon_railgun"] = "Spoorgeweer", + ["weapon_rpg"] = "Raketwerper", + ["weapon_rayminigun"] = "Weduwemaker", + + -- Criminal Enterprises DLC + ["weapon_metaldetector"] = "Metaal Detector", + ["weapon_precisionrifle"] = "Precisiegeweer", + ["weapon_tactilerifle"] = "Service Carbine", + + -- 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 + + -- Thrown + ["weapon_ball"] = "Honkbal", + ["weapon_bzgas"] = "BZ-gas", + ["weapon_flare"] = "Flare", + ["weapon_grenade"] = "Granaat", + ["weapon_petrolcan"] = "Jerrycan", + ["weapon_hazardcan"] = "Gevaarlijke jerrycan", + ["weapon_molotov"] = "Molotovcocktail", + ["weapon_proxmine"] = "Nabijheidsmijn", + ["weapon_pipebomb"] = "Pijpbom", + ["weapon_snowball"] = "Sneeuwbal", + ["weapon_stickybomb"] = "Kleefbom", + ["weapon_smokegrenade"] = "Traangas", + + -- Special + ["weapon_firebluser"] = "Brandblusser", + ["weapon_digiscanner"] = "Digitale scanner", + ["weapon_garbagebag"] = "Vuilniszak", + ["weapon_handcuffs"] = "Handboeien", + ["gadget_nightvision"] = "Nachtzicht", + ["gadget_parachute"] = "parachute", + + -- Weapon Components + ["component_knuckle_base"] = "basismodel", + ["component_knuckle_pimp"] = "de pooier", + ["component_knuckle_ballas"] = "de ballen", + ["component_knuckle_dollar"] = "de Hustler", + ["component_knuckle_diamond"] = "de rots", + ["component_knuckle_hate"] = "de Hater", + ["component_knuckle_love"] = "de minnaar", + ["component_knuckle_player"] = "de speler", + ["component_knuckle_king"] = "de koning", + ["component_knuckle_vagos"] = "de Vagos", + + ["component_luxary_finish"] = "luxe wapenafwerking", + + ["component_handle_default"] = "standaard handvat", + ["component_handle_vip"] = "VIP-handvat", + ["component_handle_bodyguard"] = "bodyguard-handvat", + + ["component_vip_finish"] = "VIP Finish", + ["component_bodyguard_finish"] = "bodyguard Finish", + + ["component_camo_finish"] = "digitale camouflage", + ["component_camo_finish2"] = "penseelstreek camouflage", + ["component_camo_finish3"] = "bos camouflage", + ["component_camo_finish4"] = "schedel camouflage", + ["component_camo_finish5"] = "sessanta Nove camouflage", + ["component_camo_finish6"] = "perseus camouflage", + ["component_camo_finish7"] = "luipaard camouflage", + ["component_camo_finish8"] = "zebracamouflage", + ["component_camo_finish9"] = "geometrische camouflage", + ["component_camo_finish10"] = "boom camouflage", + ["component_camo_finish11"] = "patriottische camouflage", + + ["component_camo_slide_finish"] = "digitale diacamouflage", + ["component_camo_slide_finish2"] = "penseelstreek Dia Camo", + ["component_camo_slide_finish3"] = "bos Slide camouflage", + ["component_camo_slide_finish4"] = "schedelschuifcamouflage", + ["component_camo_slide_finish5"] = "sessanta Nove Dia camouflage", + ["component_camo_slide_finish6"] = "perseus diacamouflage", + ["component_camo_slide_finish7"] = "luipaard Slide camouflage", + ["component_camo_slide_finish8"] = "zebra Slide camouflage", + ["component_camo_slide_finish9"] = "geometrische diacamouflage", + ["component_camo_slide_finish10"] = "boom Slide camouflage", + ["component_camo_slide_finish11"] = "patriottische diacamouflage", + + ["component_clip_default"] = "standaard magazijn", + ["component_clip_extended"] = "uitgebreid magazijn", + ["component_clip_drum"] = "drum magazijn", + ["component_clip_box"] = "box magazijn", + + ["component_scope_holo"] = "holografisch bereik", + ["component_scope_small"] = "klein bereik", + ["component_scope_medium"] = "gemiddeld bereik", + ["component_scope_large"] = "groot bereik", + ["component_scope"] = "gemonteerde scope", + ["component_scope_advanced"] = "geavanceerd bereik", + ["component_ironsights"] = "ironsights", + + ["component_suppressor"] = "suppressor", + ["component_compensator"] = "compensator", + + ["component_muzzle_flat"] = "platte mondingsrem", + ["component_muzzle_tactical"] = "tactische mondingsrem", + ["component_muzzle_fat"] = "fat-end mondingsrem", + ["component_muzzle_precision"] = "precisie mondingsrem", + ["component_muzzle_heavy"] = "zware mondingsrem", + ["component_muzzle_slanted"] = "schuine mondingsrem", + ["component_muzzle_split"] = "gespleten mondingsrem", + ["component_muzzle_squared"] = "kwadraat mondingsrem", + + ["component_flashlight"] = "zaklamp", + ["component_grip"] = "grip", + + ["component_barrel_default"] = "standaard handvat", + ["component_barrel_heavy"] = "zware handvat", + + ["component_ammo_tracer"] = "tracermunitie", + ["component_ammo_incendiary"] = "brandgevaarlijke munitie", + ["component_ammo_hollowpoint"] = "hollowpoint munitie", + ["component_ammo_fmj"] = "fMJ-munitie", + ["component_ammo_armor"] = "pantser piercing munitie", + ["component_ammo_explosive"] = "pantserpiercing brandgevaarlijke munitie", + + ["component_shells_default"] = "standaard shells", + ["component_shells_incendiary"] = "draken ademschelpen", + ["component_shells_armor"] = "stalen Buckshot Shells", + ["component_shells_hollowpoint"] = "flechette schelpen", + ["component_shells_explosive"] = "explosieve slakkenhuizen", + + -- Weapon Ammo + ["ammo_rounds"] = "ronde(n)", + ["ammo_shells"] = "huls/(zen)", + ["ammo_charge"] = "charge", + ["ammo_petrol"] = "liters brandstof", + ["ammo_firework"] = "vuurwerkpijl(en)", + ["ammo_rockets"] = "raket(ten)", + ["ammo_grenadelauncher"] = "granaat(en)", + ["ammo_grenade"] = "granaat(en)", + ["ammo_stickybomb"] = "bom(men)", + ["ammo_pipebomb"] = "bom(men)", + ["ammo_smokebomb"] = "bom(men)", + ["ammo_molotov"] = "cocktail(s)", + ["ammo_proxmine"] = "mijn(en)", + ["ammo_bzgas"] = "blik(ken)", + ["ammo_ball"] = "bal(len)", + ["ammo_snowball"] = "sneeuwbal(len)", + ["ammo_flare"] = "flare(s)", + ["ammo_flaregun"] = "flare(s)", + + -- Weapon Tints + ["tint_default"] = "standaard skin", + ["tint_green"] = "groene skin", + ["tint_gold"] = "goude skin", + ["tint_pink"] = "roze skin", + ["tint_army"] = "legerprint", + ["tint_lspd"] = "blauwe skin", + ["tint_orange"] = "oranje skin", + ["tint_platinum"] = "platina skin", } diff --git a/[core]/es_extended/locales/pl.lua b/[core]/es_extended/locales/pl.lua index d738239a5..dbea4a260 100644 --- a/[core]/es_extended/locales/pl.lua +++ b/[core]/es_extended/locales/pl.lua @@ -51,16 +51,12 @@ Locales["pl"] = { ["account_money"] = "pieniądze", ["act_imp"] = "działanie niemożliwe", ["in_vehicle"] = "nie możesz przekazywać przedmiotów w pojeździe", - ["not_in_vehicle"] = "Cannot Perform Action, Player isn't in a vehicle", -- Commands ['command_car'] = 'przywołaj pojazd', ['command_car_car'] = 'nazwa lub hash przywołanego pojazdu', ['command_cardel'] = 'usuń pojazd w pobliżu', ['command_cardel_radius'] = 'opcjonalnie usuń każdy pojazd w obszarze', - ['command_repair'] = 'Repair your vehicle', - ['command_repair_success'] = 'Successfully repaired vehicle', - ['command_repair_success_target'] = 'An admin repaired your vehicle', ['command_clear'] = 'wyczyść czat', ['command_clearall'] = 'wyczyść czat dla wszystkich graczy', ['command_clearinventory'] = 'wyczyść ekwipunek gracza', @@ -187,7 +183,6 @@ Locales["pl"] = { ["gadget_parachute"] = "spadochron", ["weapon_flare"] = "pistolet sygnałowy", ["weapon_doubleaction"] = "double-Action Revolver", - ["weapon_heavyrifle"] = "Heavy Rifle", -- Not Translated -- Weapon Components ["component_clip_default"] = "domyślny tłumik", diff --git a/[core]/es_extended/locales/sc.lua b/[core]/es_extended/locales/sc.lua new file mode 100644 index 000000000..8c3d6598e --- /dev/null +++ b/[core]/es_extended/locales/sc.lua @@ -0,0 +1,228 @@ +Locales['sc'] = { + -- Inventory + ['inventory'] = '库存 %s / %s', + ['use'] = '使用', + ['give'] = '赠送', + ['remove'] = '丢弃', + ['return'] = '返回', + ['give_to'] = '赠给', + ['amount'] = '数量', + ['giveammo'] = '赠送弹药', + ['amountammo'] = '弹药量', + ['noammo'] = '你没有足够的弹药!', + ['gave_item'] = '你把%sx%s赠给了%s', + ['received_item'] = '你收到%sx%s,来自%s', + ['gave_weapon'] = '你把%s赠给了%s', + ['gave_weapon_ammo'] = '你把~o~%sx%s %s赠给了%s', + ['gave_weapon_withammo'] = '你把%s和~o~%sx %s赠给了%s', + ['gave_weapon_hasalready'] = '%s已经拥有%s', + ['gave_weapon_noweapon'] = '%s没有那个武器', + ['received_weapon'] = '你收到了%s,来自%s', + ['received_weapon_ammo'] = '你收到了~o~%sx %s(%s),来自%s', + ['received_weapon_withammo'] = '你收到了%s和~o~%sx %s,来自%s', + ['received_weapon_hasalready'] = '%s试图给你%s,但你已经拥有了', + ['received_weapon_noweapon'] = '%s试图给你%s弹药,但你没有那个武器', + ['gave_account_money'] = '你将 $%s (%s) 给予 %s', + ['received_account_money'] = '你收到了$%s (%s) 来自 %s', + ['amount_invalid'] = '无效数量', + ['players_nearby'] = '附近没有玩家', + ['ex_inv_lim'] = '操作失败, 超过%s的物品栏限制', + ['imp_invalid_quantity'] = '操作失败,无效数量', + ['imp_invalid_amount'] = '操作失败,无效金额', + ['threw_standard'] = '你丢弃了%sx%s', + ['threw_account'] = '你丢弃了$%s%s', + ['threw_weapon'] = '你丢弃了%s', + ['threw_weapon_ammo'] = '你丢弃了%s和~o~%sx%s', + ['threw_weapon_already'] = '你已经有同样的武器了', + ['threw_cannot_pickup'] = '你不能再拿起那个了,因为你的库存已经满了', + ['threw_pickup_prompt'] = '按 E 拿起', + + -- Key mapping + ['keymap_showinventory'] = '显示库存', + + -- Salary related + ['received_salary'] = '你收到了你的工资: $%s', + ['received_help'] = '你领取到了你的失业救济金: $%s', + ['company_nomoney'] = '你受雇的公司太穷了,无法支付你的工资。', + ['received_paycheck'] = '收到转账', + ['bank'] = '花园银行', + ['account_bank'] = '银行', + ['account_black_money'] = '黑钱', + ['account_money'] = '现金', + + ['act_imp'] = '操作失败', + ['in_vehicle'] = '请离开载具', + + -- Commands + ['command_car'] = '生成载具', + ['command_car_car'] = '生成载具的模型名称或哈希值', + ['command_cardel'] = '删除附近的载具', + ['command_cardel_radius'] = '可选,删除指定半径内的所有车辆', + ['command_clear'] = '清除聊天记录', + ['command_clearall'] = '清除所有玩家的聊天记录', + ['command_clearinventory'] = '清除玩家库存', + ['command_clearloadout'] = '清除玩家皮肤', + ['command_giveaccountmoney'] = '给帐户钱', + ['command_giveaccountmoney_account'] = '有效的帐户名', + ['command_giveaccountmoney_amount'] = '添加的数量', + ['command_giveaccountmoney_invalid'] = '无效的帐户名', + ['command_giveitem'] = '给玩家一件物品', + ['command_giveitem_item'] = '物品名称', + ['command_giveitem_count'] = '物品数目', + ['command_giveweapon'] = '给玩家一件武器', + ['command_giveweapon_weapon'] = '武器名称', + ['command_giveweapon_ammo'] = '弹药数目', + ['command_giveweapon_hasalready'] = '该玩家已经拥有该武器', + ['command_giveweaponcomponent'] = '给武器配件', + ['command_giveweaponcomponent_component'] = '配件名称', + ['command_giveweaponcomponent_invalid'] = '无效的武器配件', + ['command_giveweaponcomponent_hasalready'] = '玩家已经拥有该武器配件', + ['command_giveweaponcomponent_missingweapon'] = '该玩家没有那个武器', + ['command_save'] = '保存玩家数据至数据库', + ['command_saveall'] = '保存所有玩家数据至数据库', + ['command_setaccountmoney'] = '为玩家设置帐户资金', + ['command_setaccountmoney_amount'] = '要设定的金额', + ['command_setcoords'] = '传送到坐标', + ['command_setcoords_x'] = 'x 轴', + ['command_setcoords_y'] = 'y 轴', + ['command_setcoords_z'] = 'z 轴', + ['command_setjob'] = '为玩家设定工作', + ['command_setjob_job'] = '工作名称', + ['command_setjob_grade'] = '工作等级', + ['command_setjob_invalid'] = '工作、等级或两者都无效', + ['command_setgroup'] = '设置玩家用户组', + ['command_setgroup_group'] = '用户组名称', + ['commanderror_argumentmismatch'] = '参数计数不匹配(该类型为%s, 需要传递 %s)', + ['commanderror_argumentmismatch_number'] = '参数 #%s 类型不匹配(该类型为字符串,需要传递数字类型)', + ['commanderror_invaliditem'] = '无效的物品名称', + ['commanderror_invalidweapon'] = '无效武器', + ['commanderror_console'] = '该命令不能从控制台运行', + ['commanderror_invalidcommand'] = '/%s 不是有效的命令!', + ['commanderror_invalidplayerid'] = '没有在线玩家匹配到该服务id', + ['commandgeneric_playerid'] = '玩家id', + ['command_giveammo_noweapon_found'] = '%s does not have that weapon', + ['command_giveammo_weapon'] = 'Weapon name', + ['command_giveammo_ammo'] = 'Ammo Quantity', + + -- Locale settings + ['locale_digit_grouping_symbol'] = ',', + ['locale_currency'] = '$%s', + + -- Weapons + ['weapon_knife'] = '小刀', + ['weapon_nightstick'] = '警棍', + ['weapon_hammer'] = '铁锤', + ['weapon_bat'] = '棒球棍', + ['weapon_golfclub'] = '高尔夫球杆', + ['weapon_crowbar'] = '撬棍', + ['weapon_pistol'] = '手枪', + ['weapon_combatpistol'] = '战斗手枪', + ['weapon_appistol'] = '穿甲手枪', + ['weapon_pistol50'] = '0.5 口径手枪', + ['weapon_microsmg'] = '微型冲锋枪', + ['weapon_smg'] = '冲锋枪', + ['weapon_assaultsmg'] = '突击冲锋枪', + ['weapon_assaultrifle'] = '突击步枪', + ['weapon_carbinerifle'] = '卡宾步枪', + ['weapon_advancedrifle'] = '高级步枪', + ['weapon_mg'] = '机枪', + ['weapon_combatmg'] = '战斗机枪', + ['weapon_pumpshotgun'] = '泵动式霰弹枪', + ['weapon_sawnoffshotgun'] = '短管霰弹枪', + ['weapon_assaultshotgun'] = '突击霰弹枪', + ['weapon_bullpupshotgun'] = '无托式霰弹枪', + ['weapon_stungun'] = '电击枪', + ['weapon_sniperrifle'] = '狙击步枪', + ['weapon_heavysniper'] = '重型狙击步枪', + ['weapon_grenadelauncher'] = '榴弹发射器', + ['weapon_rpg'] = '火箭炮', + ['weapon_minigun'] = '火神机枪', + ['weapon_grenade'] = '手榴弹', + ['weapon_stickybomb'] = '黏弹', + ['weapon_smokegrenade'] = '烟雾弹', + ['weapon_bzgas'] = '催泪瓦斯', + ['weapon_molotov'] = '汽油弹', + ['weapon_fireextinguisher'] = '灭火器', + ['weapon_petrolcan'] = '汽油桶', + ['weapon_ball'] = '棒球', + ['weapon_snspistol'] = '劣质手枪', + ['weapon_bottle'] = '酒瓶', + ['weapon_gusenberg'] = '古森柏冲锋枪', + ['weapon_specialcarbine'] = '特制卡宾枪', + ['weapon_heavypistol'] = '重型手枪', + ['weapon_bullpuprifle'] = '无托式步枪', + ['weapon_dagger'] = '匕首', + ['weapon_vintagepistol'] = '老式手枪', + ['weapon_firework'] = '烟花发射器', + ['weapon_musket'] = '老式火枪', + ['weapon_heavyshotgun'] = '重型霰弹枪', + ['weapon_marksmanrifle'] = '射手步枪', + ['weapon_hominglauncher'] = '制导火箭发射器', + ['weapon_proxmine'] = '感应地雷', + ['weapon_snowball'] = '雪球', + ['weapon_flaregun'] = '信号枪', + ['weapon_combatpdw'] = '作战自卫冲锋枪', + ['weapon_marksmanpistol'] = '射手手枪', + ['weapon_knuckle'] = '手指虎', + ['weapon_hatchet'] = '手斧', + ['weapon_railgun'] = '电磁轨道炮', + ['weapon_machete'] = '开山刀', + ['weapon_machinepistol'] = '冲锋手枪', + ['weapon_switchblade'] = '弹簧刀', + ['weapon_revolver'] = '重型左轮手枪', + ['weapon_dbshotgun'] = '双管霰弹枪', + ['weapon_compactrifle'] = '紧凑型步枪', + ['weapon_autoshotgun'] = '半自动霰弹枪', + ['weapon_battleaxe'] = '战斧', + ['weapon_compactlauncher'] = '紧凑型榴弹发射器', + ['weapon_minismg'] = '迷你冲锋枪', + ['weapon_pipebomb'] = '土制炸弹', + ['weapon_poolcue'] = '台球杆', + ['weapon_wrench'] = '管钳扳手', + ['weapon_flashlight'] = '手电筒', + ['gadget_parachute'] = '降落伞', + ['weapon_flare'] = '信号棒', + ['weapon_doubleaction'] = '双动式左轮手枪', + + -- Weapon Components + ['component_clip_default'] = '默认弹夹', + ['component_clip_extended'] = '扩容弹夹', + ['component_clip_drum'] = '鼓式弹夹', + ['component_clip_box'] = '盒型弹匣', + ['component_flashlight'] = '手电筒', + ['component_scope'] = '瞄准镜', + ['component_scope_advanced'] = '高级瞄准镜', + ['component_suppressor'] = '消音器', + ['component_grip'] = '握把', + ['component_luxary_finish'] = '奢华涂饰', + + -- Weapon Ammo + ['ammo_rounds'] = '发(子弹)', + ['ammo_shells'] = '发(子弹)', + ['ammo_charge'] = '喷', + ['ammo_petrol'] = '加仑(燃料)', + ['ammo_firework'] = '发(烟花弹)', + ['ammo_rockets'] = '枚(火箭弹)', + ['ammo_grenadelauncher'] = '发(榴弹)', + ['ammo_grenade'] = '枚(手榴弹)', + ['ammo_stickybomb'] = '枚(炸弹)', + ['ammo_pipebomb'] = '枚(炸弹)', + ['ammo_smokebomb'] = '枚(炸弹)', + ['ammo_molotov'] = '瓶(汽油瓶)', + ['ammo_proxmine'] = '个(地雷)', + ['ammo_bzgas'] = '罐', + ['ammo_ball'] = '个(球)', + ['ammo_snowball'] = '个(雪球)', + ['ammo_flare'] = '根(信号棒)', + ['ammo_flaregun'] = '发(信号弹)', + + -- Weapon Tints + ['tint_default'] = '默认色调', + ['tint_green'] = '绿色调', + ['tint_gold'] = '金色调', + ['tint_pink'] = '粉色调', + ['tint_army'] = '军用色调', + ['tint_lspd'] = '洛圣都警局色调', + ['tint_orange'] = '橙色调', + ['tint_platinum'] = '铂金色调', +} diff --git a/[core]/es_extended/locales/sl.lua b/[core]/es_extended/locales/sl.lua index 0fe41be5d..0e5de6125 100644 --- a/[core]/es_extended/locales/sl.lua +++ b/[core]/es_extended/locales/sl.lua @@ -52,7 +52,6 @@ Locales["sl"] = { ["act_imp"] = "Dejanja ni mogoče izvesti", ["in_vehicle"] = "Dejanja ni mogoče izvesti, Oseba je v vozilu", - ["not_in_vehicle"] = "Cannot Perform Action, Player isn't in a vehicle", -- Commands ['command_bring'] = 'Teleportiraj osebo do sebe', @@ -60,9 +59,6 @@ Locales["sl"] = { ['command_car_car'] = 'Koda vozila', ['command_cardel'] = 'Odstranite vozila v bližini', ['command_cardel_radius'] = 'Odstrani vsa vozila v določenem radiju', - ['command_repair'] = 'Repair your vehicle', - ['command_repair_success'] = 'Successfully repaired vehicle', - ['command_repair_success_target'] = 'An admin repaired your vehicle', ['command_clear'] = 'Odstrani vsa sporocila v CHATU', ['command_clearall'] = 'Počisti besedilo klepeta za vse igralce', ['command_clearinventory'] = 'Vzemi vse stvari iz osebove shrambe', @@ -204,7 +200,6 @@ Locales["sl"] = { ["weapon_militaryrifle"] = "Military Rifle", ["weapon_specialcarbine"] = "Special Carbine", ["weapon_specialcarbine_mk2"] = "Special Carbine MK2", - ["weapon_heavyrifle"] = "Heavy Rifle", -- Not Translated -- Sniper ["weapon_heavysniper"] = "Heavy Sniper", diff --git a/[core]/es_extended/locales/sr.lua b/[core]/es_extended/locales/sr.lua index 2813b8468..5a5e8b392 100644 --- a/[core]/es_extended/locales/sr.lua +++ b/[core]/es_extended/locales/sr.lua @@ -52,7 +52,6 @@ Locales["sr"] = { ["act_imp"] = "Ne možete izvršiti radnju", ["in_vehicle"] = "Ne možete uraditi to dok je igrač u vozilu", - ["not_in_vehicle"] = "Cannot Perform Action, Player isn't in a vehicle", -- Commands ['command_bring'] = 'TP-ajte igrača do Vas', @@ -60,9 +59,6 @@ Locales["sr"] = { ['command_car_car'] = 'Model ili hash vozila', ['command_cardel'] = 'Obrišite vozilo u blizini', ['command_cardel_radius'] = 'Obrišite sva vozila unutar navedenog radiusa', - ['command_repair'] = 'Repair your vehicle', - ['command_repair_success'] = 'Successfully repaired vehicle', - ['command_repair_success_target'] = 'An admin repaired your vehicle', ['command_clear'] = 'Obrišite chat', ['command_clearall'] = 'Obrišite chat za sve igrače', ['command_clearinventory'] = 'Obrišite sve stvari iz inventara igrača', @@ -204,7 +200,6 @@ Locales["sr"] = { ["weapon_militaryrifle"] = "Military Rifle", ["weapon_specialcarbine"] = "Special Carbine", ["weapon_specialcarbine_mk2"] = "Special Carbine MK2", - ["weapon_heavyrifle"] = "Heavy Rifle", -- Not Translated -- Sniper ["weapon_heavysniper"] = "Heavy Sniper", diff --git a/[core]/es_extended/locales/sv.lua b/[core]/es_extended/locales/sv.lua new file mode 100644 index 000000000..734752b11 --- /dev/null +++ b/[core]/es_extended/locales/sv.lua @@ -0,0 +1,349 @@ +Locales['sv'] = { + -- Inventory + ['inventory'] = 'Förråd ( Vikt %s / %s )', + ['use'] = 'Använd', + ['give'] = 'Ge', + ['remove'] = 'Kasta', + ['return'] = 'Gå tillbaka', + ['give_to'] = 'Ge till', + ['amount'] = 'Antal', + ['giveammo'] = 'Ge ammunition', + ['amountammo'] = 'Mängd ammunition', + ['noammo'] = 'Inte tillräckligt med ammunition!', + ['gave_item'] = 'Ge %sx %s till %s', + ['received_item'] = 'Fick %sx %s från %s', + ['gave_weapon'] = 'Ge %s till %s', + ['gave_weapon_ammo'] = 'Ge ~o~%sx %s för %s till %s', + ['gave_weapon_withammo'] = 'Ge %s med ~o~%sx %s till %s', + ['gave_weapon_hasalready'] = '%s har redan en %s', + ['gave_weapon_noweapon'] = '%s har inte det vapnet', + ['received_weapon'] = 'Mottog %s från %s', + ['received_weapon_ammo'] = 'Fick ~o~%sx %s för din %s från %s', + ['received_weapon_withammo'] = 'Mottog %s med ~o~%sx %s från %s', + ['received_weapon_hasalready'] = '%s har försökt ge dig en %s, men du har redan det här vapnet', + ['received_weapon_noweapon'] = '%s har försökt ge dig ammunition för en %s, men du har inte det här vapnet', + ['gave_account_money'] = 'Ge $%s (%s) till %s', + ['received_account_money'] = 'Mottog $%s (%s) från %s', + ['amount_invalid'] = 'Ogiltig mängd', + ['players_nearby'] = 'Inga spelare i närheten', + ['ex_inv_lim'] = 'Kan inte utföra åtgärden, överstiger maxvikten %s', + ['imp_invalid_quantity'] = 'Det går inte att utföra åtgärden, mängden är ogiltig', + ['imp_invalid_amount'] = 'Det går inte att utföra åtgärden, mängden är ogiltigt', + ['threw_standard'] = 'Kastade %sx %s', + ['threw_account'] = 'Kastade $%s %s', + ['threw_weapon'] = 'Kastade %s', + ['threw_weapon_ammo'] = 'Kastade %s med ~o~%sx %s', + ['threw_weapon_already'] = 'Du har redan det här vapnet', + ['threw_cannot_pickup'] = 'Förrådet är fullt, kan inte plocka upp!', + ['threw_pickup_prompt'] = 'Tryck E för att plocka upp', + + -- Key mapping + ['keymap_showinventory'] = 'Visa förrådet', + + -- Salary related + ['received_salary'] = 'Du har fått lön: $%s', + ['received_help'] = 'Du har fått bidrag: $%s', + ['company_nomoney'] = 'företaget du är anställt hos har inte råd att betala ut din lön', + ['received_paycheck'] = 'Mottagit lön', + ['bank'] = 'Bank', + ['account_bank'] = 'Bank', + ['account_black_money'] = 'Svarta pengar', + ['account_money'] = 'Kontanter', + + ['act_imp'] = 'Kan inte utföra åtgärd', + ['in_vehicle'] = 'Kan inte utföra åtgärd, spelaren är i ett fordon', + + -- Commands + ['command_car'] = 'Spawna ett fordon', + ['command_car_car'] = 'Fordonsmodell eller hash', + ['command_cardel'] = 'Ta bort fordon i närheten', + ['command_cardel_radius'] = 'Tar bort alla fordon inom angiven radie', + ['command_clear'] = 'Rensa chatttext', + ['command_clearall'] = 'Rensa chatttext för alla spelare', + ['command_clearinventory'] = 'Ta bort alla föremål från spelarens förråd', + ['command_clearloadout'] = 'Ta bort alla vapen från spelarens förråd', + ['command_giveaccountmoney'] = 'Ge pengar till ett specifikt konto', + ['command_giveaccountmoney_account'] = 'Konto att lägga till i', + ['command_giveaccountmoney_amount'] = 'Belopp att lägga till', + ['command_giveaccountmoney_invalid'] = 'Kontonamn ogiltigt', + ['command_giveitem'] = 'Ge spelaren ett föremål', + ['command_giveitem_item'] = 'Föremålsnamn', + ['command_giveitem_count'] = 'Mängd', + ['command_giveweapon'] = 'Ge spelaren ett vapen', + ['command_giveweapon_weapon'] = 'Vapennamn', + ['command_giveweapon_ammo'] = 'Ammunitionsmängd', + ['command_giveweapon_hasalready'] = 'Spelaren har redan det här vapnet', + ['command_giveweaponcomponent'] = 'Ge en vapenkomponent till spelaren', + ['command_giveweaponcomponent_component'] = 'Vapenkomponentnamn', + ['command_giveweaponcomponent_invalid'] = 'Ogiltig vapenkomponent', + ['command_giveweaponcomponent_hasalready'] = 'Spelaren har redan denna vapenkomponent', + ['command_giveweaponcomponent_missingweapon'] = 'Spelaren har inte det här vapnet', + ['command_save'] = 'Tvångspara en spelares data', + ['command_saveall'] = 'Tvångspara allas spelardata', + ['command_setaccountmoney'] = 'Ställ in pengarna på ett angivet konto', + ['command_setaccountmoney_amount'] = 'Ny Summa', + ['command_setcoords'] = 'Teleportera till specificerade koordinater', + ['command_setcoords_x'] = 'X-värde', + ['command_setcoords_y'] = 'Y-värde', + ['command_setcoords_z'] = 'Z-värde', + ['command_setjob'] = 'Ställ in en spelares jobb', + ['command_setjob_job'] = 'Jobbnamn', + ['command_setjob_grade'] = 'Jobbnivå', + ['command_setjob_invalid'] = 'jobbet, nivån eller båda är ogiltiga', + ['command_setgroup'] = 'Ställ in en spelares behörighetsgrupp', + ['command_setgroup_group'] = 'Gruppens namn', + ['commanderror_argumentmismatch'] = 'Ogiltigt antal argument (godkänt %s, önskat %s)', + ['commanderror_argumentmismatch_number'] = 'Ogiltigt argument #%s datatyp (godkänd sträng, önskat nummer)', + ['commanderror_invaliditem'] = 'Ogiltig artikel', + ['commanderror_invalidweapon'] = 'Ogiltigt vapen', + ['commanderror_console'] = 'Kommandot kan inte köras från konsolen', + ['commanderror_invalidcommand'] = 'Ogiltigt kommando - /%s', + ['commanderror_invalidplayerid'] = 'Angiven spelare är inte online', + ['commandgeneric_playerid'] = 'Spelarens server-id', + ['command_giveammo_noweapon_found'] = '%s does not have that weapon', + ['command_giveammo_weapon'] = 'Weapon name', + ['command_giveammo_ammo'] = 'Ammo Quantity', + + -- Locale settings + ['locale_digit_grouping_symbol'] = ' ', + ['locale_currency'] = '%s SEK', + + -- Weapons + + -- Melee + ['weapon_dagger'] = 'Dolk', + ['weapon_bat'] = 'Slagträ', + ['weapon_battleaxe'] = 'Stridsyxa', + ['weapon_bottle'] = 'Flaska', + ['weapon_crowbar'] = 'Kofot', + ['weapon_flashlight'] = 'Ficklampa', + ['weapon_golfclub'] = 'Golfklubba', + ['weapon_hammer'] = 'Hammare', + ['weapon_hatchet'] = 'Yxa', + ['weapon_knife'] = 'Kniv', + ['weapon_knuckle'] = 'Knogjärn', + ['weapon_machete'] = 'Machete', + ['weapon_nightstick'] = 'Batong', + ['weapon_wrench'] = 'Rörtång', + ['weapon_poolcue'] = 'Biljardkö', + ['weapon_stone_hatchet'] = 'Stenyxa', + ['weapon_switchblade'] = 'Fällkniv', + + -- Handguns + ['weapon_appistol'] = 'AP Pistol', + ['weapon_ceramicpistol'] = 'Ceramic Pistol', + ['weapon_combatpistol'] = 'Combat Pistol', + ['weapon_doubleaction'] = 'Double-Action Revolver', + ['weapon_navyrevolver'] = 'Navy Revolver', + ['weapon_flaregun'] = 'Flaregun', + ['weapon_gadgetpistol'] = 'Gadget Pistol', + ['weapon_heavypistol'] = 'Heavy Pistol', + ['weapon_revolver'] = 'Heavy Revolver', + ['weapon_revolver_mk2'] = 'Heavy Revolver MK2', + ['weapon_marksmanpistol'] = 'Marksman Pistol', + ['weapon_pistol'] = 'Pistol', + ['weapon_pistol_mk2'] = 'Pistol MK2', + ['weapon_pistol50'] = 'Pistol .50', + ['weapon_snspistol'] = 'SNS Pistol', + ['weapon_snspistol_mk2'] = 'SNS Pistol MK2', + ['weapon_stungun'] = 'Taser', + ['weapon_raypistol'] = 'Up-N-Atomizer', + ['weapon_vintagepistol'] = 'Vintage Pistol', + + -- Shotguns + ['weapon_assaultshotgun'] = 'Assault Shotgun', + ['weapon_autoshotgun'] = 'Auto Shotgun', + ['weapon_bullpupshotgun'] = 'Bullpup Shotgun', + ['weapon_combatshotgun'] = 'Combat Shotgun', + ['weapon_dbshotgun'] = 'Double Barrel Shotgun', + ['weapon_heavyshotgun'] = 'Heavy Shotgun', + ['weapon_musket'] = 'Musket', + ['weapon_pumpshotgun'] = 'Pump Shotgun', + ['weapon_pumpshotgun_mk2'] = 'Pump Shotgun MK2', + ['weapon_sawnoffshotgun'] = 'Sawed Off Shotgun', + + -- SMG & LMG + ['weapon_assaultsmg'] = 'Assault SMG', + ['weapon_combatmg'] = 'Combat MG', + ['weapon_combatmg_mk2'] = 'Combat MG MK2', + ['weapon_combatpdw'] = 'Combat PDW', + ['weapon_gusenberg'] = 'Gusenberg Sweeper', + ['weapon_machinepistol'] = 'Machine Pistol', + ['weapon_mg'] = 'MG', + ['weapon_microsmg'] = 'Micro SMG', + ['weapon_minismg'] = 'Mini SMG', + ['weapon_smg'] = 'SMG', + ['weapon_smg_mk2'] = 'SMG MK2', + ['weapon_raycarbine'] = 'Unholy Hellbringer', + + -- Rifles + ['weapon_advancedrifle'] = 'Advanced Rifle', + ['weapon_assaultrifle'] = 'Assault Rifle', + ['weapon_assaultrifle_mk2'] = 'Assault Rifle MK2', + ['weapon_bullpuprifle'] = 'Bullpup Rifle', + ['weapon_bullpuprifle_mk2'] = 'Bullpup Rifle MK2', + ['weapon_carbinerifle'] = 'Carbine Rifle', + ['weapon_carbinerifle_mk2'] = 'Carbine Rifle MK2', + ['weapon_compactrifle'] = 'Compact Rifle', + ['weapon_militaryrifle'] = 'Military Rifle', + ['weapon_specialcarbine'] = 'Special Carbine', + ['weapon_specialcarbine_mk2'] = 'Special Carbine MK2', + + -- Sniper + ['weapon_heavysniper'] = 'Heavy Sniper', + ['weapon_heavysniper_mk2'] = 'Heavy Sniper MK2', + ['weapon_marksmanrifle'] = 'Marksman Rifle', + ['weapon_marksmanrifle_mk2'] = 'Marksman Rifle MK2', + ['weapon_sniperrifle'] = 'Sniper Rifle', + + -- Heavy / Launchers + ['weapon_compactlauncher'] = 'Compact Launcher', + ['weapon_firework'] = 'Firework Launcher', + ['weapon_grenadelauncher'] = 'Grenade Launcher', + ['weapon_hominglauncher'] = 'Homing Launcher', + ['weapon_minigun'] = 'Minigun', + ['weapon_railgun'] = 'Railgun', + ['weapon_rpg'] = 'Rocket Launcher', + ['weapon_rayminigun'] = 'Widowmaker', + + -- Thrown + ['weapon_ball'] = 'Baseball', + ['weapon_bzgas'] = 'BZ Gas', + ['weapon_flare'] = 'Flare', + ['weapon_grenade'] = 'Grenade', + ['weapon_petrolcan'] = 'Jerrycan', + ['weapon_hazardcan'] = 'Hazardous Jerrycan', + ['weapon_molotov'] = 'Molotov Cocktail', + ['weapon_proxmine'] = 'Proximity Mine', + ['weapon_pipebomb'] = 'Pipe Bomb', + ['weapon_snowball'] = 'Snowball', + ['weapon_stickybomb'] = 'Sticky Bomb', + ['weapon_smokegrenade'] = 'Tear Gas', + + -- Special + ['weapon_fireextinguisher'] = 'Fire Extinguisher', + ['weapon_digiscanner'] = 'Digital Scanner', + ['weapon_garbagebag'] = 'Garbage Bag', + ['weapon_handcuffs'] = 'Handcuffs', + ['gadget_nightvision'] = 'Night Vision', + ['gadget_parachute'] = 'parachute', + + -- Weapon Components + ['component_knuckle_base'] = 'base Model', + ['component_knuckle_pimp'] = 'the Pimp', + ['component_knuckle_ballas'] = 'the Ballas', + ['component_knuckle_dollar'] = 'the Hustler', + ['component_knuckle_diamond'] = 'the Rock', + ['component_knuckle_hate'] = 'the Hater', + ['component_knuckle_love'] = 'the Lover', + ['component_knuckle_player'] = 'the Player', + ['component_knuckle_king'] = 'the King', + ['component_knuckle_vagos'] = 'the Vagos', + + ['component_luxary_finish'] = 'luxary Weapon Finish', + + ['component_handle_default'] = 'default Handle', + ['component_handle_vip'] = 'vIP Handle', + ['component_handle_bodyguard'] = 'bodyguard Handle', + + ['component_vip_finish'] = 'vIP Finish', + ['component_bodyguard_finish'] = 'bodyguard Finish', + + ['component_camo_finish'] = 'digital Camo', + ['component_camo_finish2'] = 'brushstroke Camo', + ['component_camo_finish3'] = 'woodland Camo', + ['component_camo_finish4'] = 'skull Camo', + ['component_camo_finish5'] = 'sessanta Nove Camo', + ['component_camo_finish6'] = 'perseus Camo', + ['component_camo_finish7'] = 'leopard Camo', + ['component_camo_finish8'] = 'zebra Camo', + ['component_camo_finish9'] = 'geometric Camo', + ['component_camo_finish10'] = 'boom Camo', + ['component_camo_finish11'] = 'patriotic Camo', + + ['component_camo_slide_finish'] = 'digital Slide Camo', + ['component_camo_slide_finish2'] = 'brushstroke Slide Camo', + ['component_camo_slide_finish3'] = 'woodland Slide Camo', + ['component_camo_slide_finish4'] = 'skull Slide Camo', + ['component_camo_slide_finish5'] = 'sessanta Nove Slide Camo', + ['component_camo_slide_finish6'] = 'perseus Slide Camo', + ['component_camo_slide_finish7'] = 'leopard Slide Camo', + ['component_camo_slide_finish8'] = 'zebra Slide Camo', + ['component_camo_slide_finish9'] = 'geometric Slide Camo', + ['component_camo_slide_finish10'] = 'boom Slide Camo', + ['component_camo_slide_finish11'] = 'patriotic Slide Camo', + + ['component_clip_default'] = 'default Magazine', + ['component_clip_extended'] = 'extended Magazine', + ['component_clip_drum'] = 'drum Magazine', + ['component_clip_box'] = 'box Magazine', + + ['component_scope_holo'] = 'holographic Scope', + ['component_scope_small'] = 'small Scope', + ['component_scope_medium'] = 'medium Scope', + ['component_scope_large'] = 'large Scope', + ['component_scope'] = 'mounted Scope', + ['component_scope_advanced'] = 'advanced Scope', + ['component_ironsights'] = 'ironsights', + + ['component_suppressor'] = 'suppressor', + ['component_compensator'] = 'compensator', + + ['component_muzzle_flat'] = 'flat Muzzle Brake', + ['component_muzzle_tactical'] = 'tactical Muzzle Brake', + ['component_muzzle_fat'] = 'fat-End Muzzle Brake', + ['component_muzzle_precision'] = 'precision Muzzle Brake', + ['component_muzzle_heavy'] = 'heavy Duty Muzzle Brake', + ['component_muzzle_slanted'] = 'slanted Muzzle Brake', + ['component_muzzle_split'] = 'split-End Muzzle Brake', + ['component_muzzle_squared'] = 'squared Muzzle Brake', + + ['component_flashlight'] = 'flashlight', + ['component_grip'] = 'grip', + + ['component_barrel_default'] = 'default Barrel', + ['component_barrel_heavy'] = 'heavy Barrel', + + ['component_ammo_tracer'] = 'tracer Ammo', + ['component_ammo_incendiary'] = 'incendiary Ammo', + ['component_ammo_hollowpoint'] = 'hollowpoint Ammo', + ['component_ammo_fmj'] = 'fMJ Ammo', + ['component_ammo_armor'] = 'armor Piercing Ammo', + ['component_ammo_explosive'] = 'armor Piercing Incendiary Ammo', + + ['component_shells_default'] = 'default Shells', + ['component_shells_incendiary'] = 'dragons Breath Shells', + ['component_shells_armor'] = 'steel Buckshot Shells', + ['component_shells_hollowpoint'] = 'flechette Shells', + ['component_shells_explosive'] = 'explosive Slug Shells', + + -- Weapon Ammo + ['ammo_rounds'] = 'ammunition', + ['ammo_shells'] = 'hagel', + ['ammo_charge'] = 'laddning', + ['ammo_petrol'] = 'bensin', + ['ammo_firework'] = 'fyrverkeri(er)', + ['ammo_rockets'] = 'raket(er)', + ['ammo_grenadelauncher'] = 'grenat(er)', + ['ammo_grenade'] = 'grenat(er)', + ['ammo_stickybomb'] = 'bomb(er)', + ['ammo_pipebomb'] = 'bomb(er)', + ['ammo_smokebomb'] = 'bomb(er)', + ['ammo_molotov'] = 'cocktail(s)', + ['ammo_proxmine'] = 'bomb(er)', + ['ammo_bzgas'] = 'burk(ar)', + ['ammo_ball'] = 'boll(ar)', + ['ammo_snowball'] = 'snöboll(ar)', + ['ammo_flare'] = 'lysraket(er)', + ['ammo_flaregun'] = 'lysraket(er)', + + -- Weapon Tints + ['tint_default'] = 'Standard färg', + ['tint_green'] = 'Grön färg', + ['tint_gold'] = 'Guld färg', + ['tint_pink'] = 'Rosa färg', + ['tint_army'] = 'Armé färg', + ['tint_lspd'] = 'Blå färg', + ['tint_orange'] = 'Orange färg', + ['tint_platinum'] = 'Platina färg', +} \ No newline at end of file diff --git a/[core]/es_extended/locales/tc.lua b/[core]/es_extended/locales/tc.lua new file mode 100644 index 000000000..59c269f1f --- /dev/null +++ b/[core]/es_extended/locales/tc.lua @@ -0,0 +1,365 @@ +Locales['tc'] = { + -- Inventory + ['inventory'] = '背包 %s / %s', + ['use'] = '使用', + ['give'] = '給', + ['remove'] = '丟棄', + ['return'] = '返回', + ['give_to'] = '給予', + ['amount'] = '數量', + ['giveammo'] = '給予子彈', + ['amountammo'] = '子彈數量', + ['noammo'] = '您沒有足夠的子彈!', + ['gave_item'] = '您把 %sx %s 給予了 %s', + ['received_item'] = '您收到 %sx %s,來自 %s', + ['gave_weapon'] = '您把 %s 給予了 %s', + ['gave_weapon_ammo'] = '您把 ~o~%sx %s %s 給予了 %s', + ['gave_weapon_withammo'] = '您把 %s 和 ~o~%sx %s 給予了 %s', + ['gave_weapon_hasalready'] = '%s 已經有 %s', + ['gave_weapon_noweapon'] = '%s 沒有那把武器', + ['received_weapon'] = '您收到了 %s,來自 %s', + ['received_weapon_ammo'] = '您收到了 ~o~%sx %s (%s),來自%s', + ['received_weapon_withammo'] = '您收到了 %s 和~o~%sx %s,來自%s', + ['received_weapon_hasalready'] = '%s 嘗試給您 %s,但您已經有了', + ['received_weapon_noweapon'] = '%s 嘗試給您 %s 子彈,但是您沒有那把武器', + ['gave_account_money'] = '您將 $%s (%s) 給予 %s', + ['received_account_money'] = '您收到了 $%s (%s) 來自 %s', + ['amount_invalid'] = '無效的數量', + ['players_nearby'] = '附近沒有玩家', + ['ex_inv_lim'] = '操作失敗, 超過 %s 物品欄位的限制', + ['imp_invalid_quantity'] = '操作失敗,無效的數量', + ['imp_invalid_amount'] = '操作失敗,無效的金額', + ['threw_standard'] = '您丟棄了 %sx %s', + ['threw_account'] = '您丟棄了 $%s %s', + ['threw_weapon'] = '您丟棄了 %s', + ['threw_weapon_ammo'] = '您丟棄了 %s 和 ~o~%sx %s', + ['threw_weapon_already'] = '您已經有相同的武器了', + ['threw_cannot_pickup'] = '您不能再撿起該物品,因為您的背包已經滿了', + ['threw_pickup_prompt'] = '按下 E 撿起', + + -- Key mapping + ['keymap_showinventory'] = '顯示背包', + + -- Salary related + ['received_salary'] = '您收到您的薪水: $%s', + ['received_help'] = '你領取到了你的失業救濟金: $%s', + ['company_nomoney'] = '您的公司太窮了,無法給予您薪水。', + ['received_paycheck'] = '收到轉帳', + ['bank'] = '花園銀行', + ['account_bank'] = '銀行', + ['account_black_money'] = '黑錢', + ['account_money'] = '現金', + + ['act_imp'] = '操作失敗', + ['in_vehicle'] = '請離開載具', + + -- Commands + ['command_bring'] = '傳送玩家到你旁邊', + ['command_car'] = '生成載具', + ['command_car_car'] = '生成載具的模型名稱或希哈值', + ['command_cardel'] = '刪除附近的載具', + ['command_cardel_radius'] = '可選擇,刪除指定半徑內的所有車輛', + ['command_clear'] = '清除聊天紀錄', + ['command_clearall'] = '清除所有玩家的聊天紀錄', + ['command_clearinventory'] = '清除玩家背包', + ['command_clearloadout'] = '清除玩家武器配置', + ['command_freeze'] = '凍結玩家', + ['command_unfreeze'] = '解凍玩家', + ['command_giveaccountmoney'] = '給予帳戶錢', + ['command_giveaccountmoney_account'] = '有效的帳戶名稱', + ['command_giveaccountmoney_amount'] = '添加的數量', + ['command_giveaccountmoney_invalid'] = '無效的帳戶名稱', + ['command_giveitem'] = '給玩家一個物品', + ['command_giveitem_item'] = '物品名稱', + ['command_giveitem_count'] = '物品數量', + ['command_giveweapon'] = '給玩家一把武器', + ['command_giveweapon_weapon'] = '武器名稱', + ['command_giveweapon_ammo'] = '子彈數量', + ['command_giveweapon_hasalready'] = '該玩家已經擁有了該武器', + ['command_giveweaponcomponent'] = '給予武器配件', + ['command_giveweaponcomponent_component'] = '配件名稱', + ['command_giveweaponcomponent_invalid'] = '無效的武器配件', + ['command_giveweaponcomponent_hasalready'] = '該玩家已經擁有了武器配件', + ['command_giveweaponcomponent_missingweapon'] = '該玩家沒有那把武器', + ['command_goto'] = '傳送到一名玩家旁邊', + ['command_kill'] = '殺死一名玩家', + ['command_save'] = '保存玩家數據至資料庫', + ['command_saveall'] = '保存所有玩家數據至資料庫', + ['command_setaccountmoney'] = '為玩家設置賬戶資金', + ['command_setaccountmoney_amount'] = '要設置的金額', + ['command_setcoords'] = '傳送到座標上', + ['command_setcoords_x'] = 'x 軸', + ['command_setcoords_y'] = 'y 軸', + ['command_setcoords_z'] = 'z 軸', + ['command_setjob'] = '設定該玩家職業', + ['command_setjob_job'] = '職業名稱', + ['command_setjob_grade'] = '職業階級', + ['command_setjob_invalid'] = '職業、階級或者兩者都無效', + ['command_setgroup'] = '設定玩家群組階級', + ['command_setgroup_group'] = '玩家群組階級名稱', + ['commanderror_argumentmismatch'] = '參數數量不正確(該類型為 %s, 需要給予 %s)', + ['commanderror_argumentmismatch_number'] = '參數 #%s 類型不匹配(該類型為字串,需要給予的數字類型)', + ['commanderror_invaliditem'] = '無效的物品名稱', + ['commanderror_invalidweapon'] = '無效武器', + ['commanderror_console'] = '該指令不能從控制台執行', + ['commanderror_invalidcommand'] = '/%s 不是有效的指令!', + ['commanderror_invalidplayerid'] = '無效的玩家ID', + ['commandgeneric_playerid'] = '玩家id', + ['command_giveammo_noweapon_found'] = '%s 沒有找到這個武器', + ['command_giveammo_weapon'] = '武器名稱', + ['command_giveammo_ammo'] = '彈藥數量', + ['tpm_nowaypoint'] = '沒有設定導航點', + ['tpm_success'] = '成功傳送', + + ['noclip_message'] = 'Noclip 已被開啟 %s', + ['enabled'] = '~g~開啟~s~', + ['disabled'] = '~r~關閉~s~', + + -- Locale settings + ['locale_digit_grouping_symbol'] = ',', + ['locale_currency'] = '$%s', + + -- Weapons + + -- Melee + ['weapon_dagger'] = '古董騎兵匕首', + ['weapon_bat'] = '球棒', + ['weapon_battleaxe'] = '戰鬥斧頭', + ['weapon_bottle'] = '瓶子', + ['weapon_crowbar'] = '鐵撬', + ['weapon_flashlight'] = '手電筒', + ['weapon_golfclub'] = '高爾夫球桿', + ['weapon_hammer'] = '鐵鎚', + ['weapon_hatchet'] = '斧頭', + ['weapon_knife'] = '小刀', + ['weapon_knuckle'] = '手指虎', + ['weapon_machete'] = '開山刀', + ['weapon_nightstick'] = '警棍', + ['weapon_wrench'] = '管鉗扳手', + ['weapon_poolcue'] = '桌球桿', + ['weapon_stone_hatchet'] = '石斧', + ['weapon_switchblade'] = '彈簧刀', + + -- Handguns + ['weapon_appistol'] = '穿甲手槍', + ['weapon_ceramicpistol'] = '陶瓷手槍', + ['weapon_combatpistol'] = '戰鬥手槍', + ['weapon_doubleaction'] = '雙動式左輪手槍', + ['weapon_navyrevolver'] = '海軍左輪手槍', + ['weapon_flaregun'] = '信號槍', + ['weapon_gadgetpistol'] = '佩里克手槍', + ['weapon_heavypistol'] = '重型手槍', + ['weapon_revolver'] = '重型左輪手槍', + ['weapon_revolver_mk2'] = '重型左輪手槍 MK2', + ['weapon_marksmanpistol'] = '射手手槍', + ['weapon_pistol'] = '手槍', + ['weapon_pistol_mk2'] = '手槍 MK2', + ['weapon_pistol50'] = '50 口徑手槍', + ['weapon_snspistol'] = '劣質手槍', + ['weapon_snspistol_mk2'] = '劣質手槍 MK2', + ['weapon_stungun'] = '電擊槍', + ['weapon_raypistol'] = '原子堡手槍', + ['weapon_vintagepistol'] = '復古手槍', + + -- Shotguns + ['weapon_assaultshotgun'] = '突擊霰彈槍', + ['weapon_autoshotgun'] = '衝鋒霰彈槍', + ['weapon_bullpupshotgun'] = '犢牛式霰彈槍', + ['weapon_combatshotgun'] = '戰鬥霰彈槍', + ['weapon_dbshotgun'] = '雙管霰彈槍', + ['weapon_heavyshotgun'] = '重型霰彈槍', + ['weapon_musket'] = '老式火槍', + ['weapon_pumpshotgun'] = '泵動式霰彈槍', + ['weapon_pumpshotgun_mk2'] = '泵動式霰彈槍 MK2', + ['weapon_sawnoffshotgun'] = '削短型霰彈槍', + + -- SMG & LMG + ['weapon_assaultsmg'] = '突擊衝鋒槍', + ['weapon_combatmg'] = '戰鬥機關槍', + ['weapon_combatmg_mk2'] = '戰鬥機關槍 MK2', + ['weapon_combatpdw'] = '戰鬥自衛衝鋒槍', + ['weapon_gusenberg'] = '古森柏衝鋒槍', + ['weapon_machinepistol'] = '衝鋒手槍', + ['weapon_mg'] = '機關槍', + ['weapon_microsmg'] = '小型衝鋒槍', + ['weapon_minismg'] = '迷你衝鋒槍', + ['weapon_smg'] = '衝鋒槍', + ['weapon_smg_mk2'] = '衝鋒槍', + ['weapon_raycarbine'] = '不潔使者', + + -- Rifles + ['weapon_advancedrifle'] = '高階步槍', + ['weapon_assaultrifle'] = '突擊步槍', + ['weapon_assaultrifle_mk2'] = '突擊步槍 MK2', + ['weapon_bullpuprifle'] = '犢牛式步槍', + ['weapon_bullpuprifle_mk2'] = '犢牛式步槍 MK2', + ['weapon_carbinerifle'] = '卡賓步槍', + ['weapon_carbinerifle_mk2'] = '卡賓步槍 MK2', + ['weapon_compactrifle'] = '精簡型步槍', + ['weapon_militaryrifle'] = '軍用步槍', + ['weapon_specialcarbine'] = '特製卡賓步槍', + ['weapon_specialcarbine_mk2'] = '特製卡賓步槍 MK2', + + -- Sniper + ['weapon_heavysniper'] = '重型狙擊槍', + ['weapon_heavysniper_mk2'] = '重型狙擊槍 MK2', + ['weapon_marksmanrifle'] = '射手步槍', + ['weapon_marksmanrifle_mk2'] = '射手步槍 MK2', + ['weapon_sniperrifle'] = '狙擊槍', + + -- Heavy / Launchers + ['weapon_compactlauncher'] = '精簡榴彈發射器', + ['weapon_firework'] = '煙火發射器', + ['weapon_grenadelauncher'] = '榴彈發射器', + ['weapon_hominglauncher'] = '追蹤彈發射器', + ['weapon_minigun'] = '火神機槍', + ['weapon_railgun'] = '雷射槍', + ['weapon_rpg'] = '火箭砲', + ['weapon_rayminigun'] = '寡婦製造者', + + -- Criminal Enterprises DLC + ['weapon_metaldetector'] = '金屬探測器', + ['weapon_precisionrifle'] = '精準步槍', + ['weapon_tactilerifle'] = '制式卡賓步槍', + + -- Thrown + ['weapon_ball'] = '球', + ['weapon_bzgas'] = '毒氣彈', + ['weapon_flare'] = '信號彈', + ['weapon_grenade'] = '手榴彈', + ['weapon_petrolcan'] = '汽油桶', + ['weapon_hazardcan'] = '有害汽油桶', + ['weapon_molotov'] = '汽油彈', + ['weapon_proxmine'] = '感應式地雷', + ['weapon_pipebomb'] = '土製炸彈', + ['weapon_snowball'] = '雪球', + ['weapon_stickybomb'] = '黏彈', + ['weapon_smokegrenade'] = '催淚瓦斯', + + -- Special + ['weapon_fireextinguisher'] = '滅火器', + ['weapon_digiscanner'] = '數位掃描儀', + ['weapon_garbagebag'] = '垃圾袋', + ['weapon_handcuffs'] = '手銬', + ['gadget_nightvision'] = '夜視鏡', + ['gadget_parachute'] = '降落傘', + + -- Weapon Components + ['component_knuckle_base'] = '基本款', + ['component_knuckle_pimp'] = '皮條客', + ['component_knuckle_ballas'] = '巴勒幫', + ['component_knuckle_dollar'] = '江湖騙子', + ['component_knuckle_diamond'] = '搖滾龐克', + ['component_knuckle_hate'] = '仇恨份子', + ['component_knuckle_love'] = '甜蜜情人', + ['component_knuckle_player'] = '花花公子', + ['component_knuckle_king'] = '王者無敵', + ['component_knuckle_vagos'] = '維戈斯幫', + + ['component_luxary_finish'] = '尤瑟夫·阿米爾富豪塗裝', + + ['component_handle_default'] = '原裝刀柄', + ['component_handle_vip'] = '老大款式', + ['component_handle_bodyguard'] = '保鑣款式', + + ['component_vip_finish'] = '老大款式', + ['component_bodyguard_finish'] = '保鑣款式', + + ['component_camo_finish'] = '數碼迷彩', + ['component_camo_finish2'] = '筆刷迷彩', + ['component_camo_finish3'] = '林地迷彩', + ['component_camo_finish4'] = '骷髏頭', + ['component_camo_finish5'] = '希斯提·耐', + ['component_camo_finish6'] = '神之子', + ['component_camo_finish7'] = '豹紋', + ['component_camo_finish8'] = '斑馬紋', + ['component_camo_finish9'] = '幾何', + ['component_camo_finish10'] = 'BOOM!', + ['component_camo_finish11'] = '愛國者', + + ['component_camo_slide_finish'] = '數碼迷彩塗裝', + ['component_camo_slide_finish2'] = '筆刷迷彩塗裝', + ['component_camo_slide_finish3'] = '林地迷彩塗裝', + ['component_camo_slide_finish4'] = '骷髏頭塗裝', + ['component_camo_slide_finish5'] = '希斯提·耐塗裝', + ['component_camo_slide_finish6'] = '神之子塗裝', + ['component_camo_slide_finish7'] = '豹紋塗裝', + ['component_camo_slide_finish8'] = '斑馬紋塗裝', + ['component_camo_slide_finish9'] = '幾何塗裝', + ['component_camo_slide_finish10'] = 'BOOM塗裝', + ['component_camo_slide_finish11'] = '愛國者塗裝', + + ['component_clip_default'] = '預設彈匣', + ['component_clip_extended'] = '擴充彈匣', + ['component_clip_drum'] = '彈鼓', + ['component_clip_box'] = '盒型彈匣', + + ['component_scope_holo'] = '全像式瞄準鏡', + ['component_scope_small'] = '小型瞄準鏡', + ['component_scope_medium'] = '中型瞄準鏡', + ['component_scope_large'] = '大型瞄準鏡', + ['component_scope'] = '瞄準鏡', + ['component_scope_advanced'] = '先進瞄準鏡', + ['component_ironsights'] = '鐵瞄具', + + ['component_suppressor'] = '消音器', + ['component_compensator'] = '補償器', + + ['component_muzzle_flat'] = '扁型槍口制動器', + ['component_muzzle_tactical'] = '戰術槍口制動器', + ['component_muzzle_fat'] = '寬尾型槍口制動器', + ['component_muzzle_precision'] = '精準槍口制動器', + ['component_muzzle_heavy'] = '耐用型槍口制動器', + ['component_muzzle_slanted'] = '傾斜型槍口制動器', + ['component_muzzle_split'] = '分岔型槍口制動器', + ['component_muzzle_squared'] = '方形槍口制動器', + + ['component_flashlight'] = '手電筒', + ['component_grip'] = '握把', + + ['component_barrel_default'] = '預設槍管', + ['component_barrel_heavy'] = '重型槍管', + + ['component_ammo_tracer'] = '曳光彈', + ['component_ammo_incendiary'] = '燃燒彈', + ['component_ammo_hollowpoint'] = '空包彈', + ['component_ammo_fmj'] = '全金屬外殼彈', + ['component_ammo_armor'] = '穿甲彈', + ['component_ammo_explosive'] = '爆裂彈', + + ['component_shells_default'] = '預設彈藥', + ['component_shells_incendiary'] = '龍息彈', + ['component_shells_armor'] = '鋼製獵鹿彈', + ['component_shells_hollowpoint'] = '飛鏢彈', + ['component_shells_explosive'] = '爆裂彈', + + -- Weapon Ammo + ['ammo_rounds'] = '發(子彈)', + ['ammo_shells'] = '發(子彈)', + ['ammo_charge'] = '噴', + ['ammo_petrol'] = '加崙(燃料)', + ['ammo_firework'] = '發(煙火)', + ['ammo_rockets'] = '枚(火箭彈)', + ['ammo_grenadelauncher'] = '發(榴彈)', + ['ammo_grenade'] = '枚(手榴彈)', + ['ammo_stickybomb'] = '枚(炸彈)', + ['ammo_pipebomb'] = '枚(炸彈)', + ['ammo_smokebomb'] = '枚(炸彈)', + ['ammo_molotov'] = '瓶(汽油瓶)', + ['ammo_proxmine'] = '個(地雷)', + ['ammo_bzgas'] = '罐', + ['ammo_ball'] = '顆(球)', + ['ammo_snowball'] = '顆(雪球)', + ['ammo_flare'] = '根(信號棒)', + ['ammo_flaregun'] = '發(信號彈)', + + -- Weapon Tints + ['tint_default'] = '預設色調', + ['tint_green'] = '綠色調', + ['tint_gold'] = '金色調', + ['tint_pink'] = '粉色調', + ['tint_army'] = '軍用色調', + ['tint_lspd'] = '洛聖都警察局色調', + ['tint_orange'] = '橘色調', + ['tint_platinum'] = '白金色調', +} diff --git a/[core]/es_extended/locales/zh-cn.lua b/[core]/es_extended/locales/zh-cn.lua index e5093c258..e75009812 100644 --- a/[core]/es_extended/locales/zh-cn.lua +++ b/[core]/es_extended/locales/zh-cn.lua @@ -52,7 +52,6 @@ Locales["zh-cn"] = { ["act_imp"] = "操作失败", ["in_vehicle"] = "请离开当前载具", - ["not_in_vehicle"] = "Cannot Perform Action, Player isn't in a vehicle", -- Commands ['command_bring'] = '传送玩家到您身边', @@ -60,9 +59,6 @@ Locales["zh-cn"] = { ['command_car_car'] = '生成载具的模型名称或哈希值', ['command_cardel'] = '删除附近载具', ['command_cardel_radius'] = '可选,删除指定半径内的所有载具', - ['command_repair'] = 'Repair your vehicle', - ['command_repair_success'] = 'Successfully repaired vehicle', - ['command_repair_success_target'] = 'An admin repaired your vehicle', ['command_clear'] = '清除聊天记录', ['command_clearall'] = '清除所有玩家的聊天记录', ['command_clearinventory'] = '清除玩家库存', @@ -204,7 +200,6 @@ Locales["zh-cn"] = { ["weapon_militaryrifle"] = "军用步枪", ["weapon_specialcarbine"] = "特制卡宾步枪", ["weapon_specialcarbine_mk2"] = "特制卡宾步枪-MK2", - ["weapon_heavyrifle"] = "Heavy Rifle", -- Not Translated -- Sniper ["weapon_heavysniper"] = "重型狙击步枪", diff --git a/[core]/es_extended/server/classes/player.lua b/[core]/es_extended/server/classes/player.lua index 49b600cf7..a6d3e6ac0 100644 --- a/[core]/es_extended/server/classes/player.lua +++ b/[core]/es_extended/server/classes/player.lua @@ -20,7 +20,7 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, self.weight = weight self.maxWeight = Config.MaxWeight self.metadata = metadata - self.admin = Core.IsPlayerAdmin(playerId) + if Config.Multichar then self.license = 'license' .. identifier:sub(identifier:find(':'), identifier:len()) else self.license = 'license:' .. identifier end ExecuteCommand(('add_principal identifier.%s group.%s'):format(self.license, self.group)) @@ -352,7 +352,6 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, function self.setJob(newJob, grade) grade = tostring(grade) local lastJob = json.decode(json.encode(self.job)) - if ESX.DoesJobExist(newJob, grade) then local jobObject, gradeObject = ESX.Jobs[newJob], ESX.Jobs[newJob].grades[grade] @@ -360,6 +359,8 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, self.job.name = jobObject.name self.job.label = jobObject.label + self.job.type = jobObject.type + self.job.grade = tonumber(grade) self.job.grade_name = gradeObject.name self.job.grade_label = gradeObject.label @@ -379,7 +380,8 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, TriggerEvent('esx:setJob', self.source, self.job, lastJob) self.triggerEvent('esx:setJob', self.job, lastJob) - Player(self.source).state:set("job", self.job, true) + self.triggerEvent('RiP-Fraktion:reloadFraktion') + --Player(self.source).state:set("job", self.job, true) else print(('[es_extended] [^3WARNING^7] Ignoring invalid ^5.setJob()^7 usage for ID: ^5%s^7, Job: ^5%s^7'):format(self.source, job)) end @@ -398,7 +400,7 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, }) GiveWeaponToPed(GetPlayerPed(self.source), joaat(weaponName), ammo, false, false) - self.triggerEvent('esx:addInventoryItem', weaponLabel, false, true) + self.triggerEvent('esx:addInventoryItem', weaponLabel, false, true, weaponName) end end @@ -463,7 +465,7 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, function self.removeWeapon(weaponName) local weaponLabel, playerPed = nil, GetPlayerPed(self.source) - if not playerPed then + if not playerPed then return print("[^1ERROR^7] xPlayer.removeWeapon ^5invalid^7 player ped!") end @@ -474,7 +476,7 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, for _, v2 in ipairs(v.components) do self.removeWeaponComponent(weaponName, v2) end - + local weaponHash = joaat(v.name) RemoveWeaponFromPed(playerPed, weaponHash) @@ -565,8 +567,8 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, end end - function self.showNotification(msg, notifyType, length) - self.triggerEvent('esx:showNotification', msg, notifyType, length) + function self.showNotification(msg, type, length) + self.triggerEvent('esx:showNotification', msg, type, length) end function self.showAdvancedNotification(sender, subject, msg, textureDict, iconType, flash, saveToBrief, hudColorIndex) @@ -644,59 +646,33 @@ function CreateExtendedPlayer(playerId, identifier, group, accounts, inventory, return print(("[^1ERROR^7] xPlayer.setMeta ^5value^7 should be ^5string^7 as a subIndex!"):format(value)) end - if not self.metadata[index] or type(self.metadata[index]) ~= "table" then - self.metadata[index] = { } - end - - self.metadata[index] = type(self.metadata[index]) == 'table' and self.metadata[index] or {} self.metadata[index][value] = subValue end + + self.triggerEvent('esx:updatePlayerData', 'metadata', self.metadata) Player(self.source).state:set('metadata', self.metadata, true) end - function self.clearMeta(index, subValues) + function self.clearMeta(index) if not index then - return print("[^1ERROR^7] xPlayer.clearMeta ^5index^7 is Missing!") - end - - if type(index) ~= "string" then - return print("[^1ERROR^7] xPlayer.clearMeta ^5index^7 should be ^5string^7!") + return print(("[^1ERROR^7] xPlayer.clearMeta ^5%s^7 is Missing!"):format(index)) end - - local metaData = self.metadata[index] - if metaData == nil then - return Config.EnableDebug and print(("[^1ERROR^7] xPlayer.clearMeta ^5%s^7 does not exist!"):format(index)) or nil - end - - if not subValues then - -- If no subValues is provided, we will clear the entire value in the metaData table - self.metadata[index] = nil - elseif type(subValues) == "string" then - -- If subValues is a string, we will clear the specific subValue within the table - if type(metaData) == "table" then - metaData[subValues] = nil - else - return print(("[^1ERROR^7] xPlayer.clearMeta ^5%s^7 is not a table! Cannot clear subValue ^5%s^7."):format(index, subValues)) - end - elseif type(subValues) == "table" then - -- If subValues is a table, we will clear multiple subValues within the table - for i = 1, #subValues do - local subValue = subValues[i] - if type(subValue) == "string" then - if type(metaData) == "table" then - metaData[subValue] = nil - else - print(("[^1ERROR^7] xPlayer.clearMeta ^5%s^7 is not a table! Cannot clear subValue ^5%s^7."):format(index, subValue)) - end - else - print(("[^1ERROR^7] xPlayer.clearMeta subValues should contain ^5string^7, received ^5%s^7, skipping..."):format(type(subValue))) - end + + if type(index) == 'table' then + for _, val in pairs(index) do + self.clearMeta(val) end - else - return print(("[^1ERROR^7] xPlayer.clearMeta ^5subValues^7 should be ^5string^7 or ^5table^7, received ^5%s^7!"):format(type(subValues))) + + return end - + + if not self.metadata[index] then + return print(("[^1ERROR^7] xPlayer.clearMeta ^5%s^7 not exist!"):format(index)) + end + + self.metadata[index] = nil + self.triggerEvent('esx:updatePlayerData', 'metadata', self.metadata) Player(self.source).state:set('metadata', self.metadata, true) end diff --git a/[core]/es_extended/server/commands.lua b/[core]/es_extended/server/commands.lua index 4bb0de60a..458e3e157 100644 --- a/[core]/es_extended/server/commands.lua +++ b/[core]/es_extended/server/commands.lua @@ -1,9 +1,9 @@ -ESX.RegisterCommand({'setcoords', 'tp'}, 'admin', function(xPlayer, args) +ESX.RegisterCommand('setcoords', 'admin', function(xPlayer, args) xPlayer.setCoords({ x = args.x, y = args.y, z = args.z }) if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Set Coordinates /setcoords Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "X Coord", value = args.x, inline = true }, { name = "Y Coord", value = args.y, inline = true }, { name = "Z Coord", value = args.z, inline = true }, @@ -13,27 +13,49 @@ end, false, { help = TranslateCap('command_setcoords'), validate = true, arguments = { - { name = 'x', help = TranslateCap('command_setcoords_x'), type = 'coordinate' }, - { name = 'y', help = TranslateCap('command_setcoords_y'), type = 'coordinate' }, - { name = 'z', help = TranslateCap('command_setcoords_z'), type = 'coordinate' } + { name = 'x', help = TranslateCap('command_setcoords_x'), type = 'number' }, + { name = 'y', help = TranslateCap('command_setcoords_y'), type = 'number' }, + { name = 'z', help = TranslateCap('command_setcoords_z'), type = 'number' } } }) ESX.RegisterCommand('setjob', 'admin', function(xPlayer, args, showError) - if not ESX.DoesJobExist(args.job, args.grade) then - return showError(TranslateCap('command_setjob_invalid')) - end - + if not ESX.DoesJobExist(args.job, args.grade) then + if xPlayer ~= false then + return TriggerClientEvent('okokNotify:Alert', xPlayer.source, "System", "Job und oder Rang existiert nicht!", 5000, 'error') + else + return print("Job und oder Rang existiert nicht!") + end + end + args.playerId.setJob(args.job, args.grade) - if Config.AdminLogging then - ESX.DiscordLogFields("UserActions", "Set Job /setjob Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, - { name = "Target", value = args.playerId.name, inline = true }, - { name = "Job", value = args.job, inline = true }, - { name = "Grade", value = args.grade, inline = true }, - }) + + if xPlayer ~= false then + TriggerClientEvent('okokNotify:Alert', args.playerId.source, "System", ""..GetPlayerName(xPlayer.source).." hat deinen Job auf "..args.playerId.getJob().label.." | "..args.playerId.getJob().grade_label.." gesetzt.", 10000, 'group') + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "System", "Du hast den Job von "..GetPlayerName(args.playerId.source).." auf "..args.playerId.getJob().label.." | "..args.playerId.getJob().grade_label.." gesetzt.", 10000, 'group') + if Config.AdminLogging then + ESX.DiscordLogFields("UserActions", "Set Job /setjob Triggered!", "pink", { + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, + { name = "Target", value = args.playerId.name, inline = true }, + { name = "Job", value = args.job, inline = true }, + { name = "Grade", value = args.grade, inline = true }, + }) + end + else + TriggerClientEvent('okokNotify:Alert', args.playerId.source, "System", "Das System hat deinen Job auf "..args.playerId.getJob().label.." | "..args.playerId.getJob().grade_label.." gesetzt.", 10000, 'group') + print("Du hast den Job von "..GetPlayerName(args.playerId.source).." auf "..args.playerId.getJob().label.." | "..args.playerId.getJob().grade_label.." gesetzt.") + if Config.AdminLogging then + ESX.DiscordLogFields("UserActions", "Set Job /setjob Triggered!", "pink", { + { name = "Player", value = "System", inline = true }, + { name = "ID", value = "Console", inline = true }, + { name = "Target", value = args.playerId.name, inline = true }, + { name = "Job", value = args.job, inline = true }, + { name = "Grade", value = args.grade, inline = true }, + }) + end end + end, true, { help = TranslateCap('command_setjob'), validate = true, @@ -75,8 +97,8 @@ ESX.RegisterCommand('car', 'admin', function(xPlayer, args, showError) if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Spawn Car /car Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Vehicle", value = args.car, inline = true } }) end @@ -101,27 +123,31 @@ end, false, { help = TranslateCap('command_car'), validate = false, arguments = { - { name = 'car', validate = false, help = TranslateCap('command_car_car'), type = 'string' } + { name = 'car', validate = false, help = TranslateCap('command_car_car'), type = 'any' } } }) ESX.RegisterCommand({ 'cardel', 'dv' }, 'admin', function(xPlayer, args) local PedVehicle = GetVehiclePedIsIn(GetPlayerPed(xPlayer.source), false) if DoesEntityExist(PedVehicle) then - DeleteEntity(PedVehicle) + exports["AdvancedParking"]:DeleteVehicle(PedVehicle) + end + + if type(args.radius) == 'string' or type(args.radius) == string then + args.radius = 5.0 end local Vehicles = ESX.OneSync.GetVehiclesInArea(GetEntityCoords(GetPlayerPed(xPlayer.source)), tonumber(args.radius) or 5.0) for i = 1, #Vehicles do local Vehicle = NetworkGetEntityFromNetworkId(Vehicles[i]) if DoesEntityExist(Vehicle) then - DeleteEntity(Vehicle) + exports["AdvancedParking"]:DeleteVehicle(Vehicle) end end if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Delete Vehicle /dv Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, }) end end, false, { @@ -132,48 +158,48 @@ end, false, { } }) -ESX.RegisterCommand({ 'fix', 'repair' }, 'admin', function(xPlayer, args, showError) - local xTarget = args.playerId - local ped = GetPlayerPed(xTarget.source) - local pedVehicle = GetVehiclePedIsIn(ped, false) - if not pedVehicle or GetPedInVehicleSeat(pedVehicle, -1) ~= ped then - showError(TranslateCap('not_in_vehicle')) - return - end - xTarget.triggerEvent("esx:repairPedVehicle") - xPlayer.showNotification(TranslateCap('command_repair_success'), true, false, 140) - if xPlayer.source ~= xTarget.source then - xTarget.showNotification(TranslateCap('command_repair_success_target'), true, false, 140) - end - if Config.AdminLogging then - ESX.DiscordLogFields("UserActions", "Fix Vehicle /fix Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, - { name = "Target", value = xTarget.name, inline = true }, - }) - end -end, true, { - help = TranslateCap('command_repair'), - validate = false, - arguments = { - { name = 'playerId', help = TranslateCap('commandgeneric_playerid'), type = 'player' } - } -}) - ESX.RegisterCommand('setaccountmoney', 'admin', function(xPlayer, args, showError) if not args.playerId.getAccount(args.account) then return showError(TranslateCap('command_giveaccountmoney_invalid')) end args.playerId.setAccountMoney(args.account, args.amount, "Government Grant") - if Config.AdminLogging then - ESX.DiscordLogFields("UserActions", "Set Account Money /setaccountmoney Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, - { name = "Target", value = args.playerId.name, inline = true }, - { name = "Account", value = args.account, inline = true }, - { name = "Amount", value = args.amount, inline = true }, - }) + + local accountText = nil + + if args.account == 'money' then + accountText = "Bargeld" + elseif args.account == 'bank' then + accountText = "Kontostand" + else + accountText = "Geld" end + + if xPlayer ~= false then + TriggerClientEvent('okokNotify:Alert', args.playerId.source, "System", ""..GetPlayerName(xPlayer.source).." hat dein "..accountText.." auf "..args.amount.."$ gesetzt!", 10000, 'group') + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "System", "Du hast das Geld von "..GetPlayerName(args.playerId.source).." auf "..args.amount.."$ gesetzt!", 10000, 'group') + if Config.AdminLogging then + ESX.DiscordLogFields("UserActions", "Set Account Money /setaccountmoney Triggered!", "pink", { + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, + { name = "Target", value = args.playerId.name, inline = true }, + { name = "Account", value = args.account, inline = true }, + { name = "Amount", value = args.amount, inline = true }, + }) + end + else -- console + TriggerClientEvent('okokNotify:Alert', args.playerId.source, "System", "Das System hat dein "..accountText.." auf "..args.amount.."$ gesetzt!", 10000, 'group') + print("Du hast das Geld von "..GetPlayerName(args.playerId.source).." auf "..args.amount.."$ gesetzt.") + if Config.AdminLogging then + ESX.DiscordLogFields("UserActions", "Set Account Money /setaccountmoney Triggered!", "pink", { + { name = "Player", value = "System", inline = true }, + { name = "ID", value = "Console", inline = true }, + { name = "Target", value = args.playerId.name, inline = true }, + { name = "Account", value = args.account, inline = true }, + { name = "Amount", value = args.amount, inline = true }, + }) + end + end + end, true, { help = TranslateCap('command_setaccountmoney'), validate = true, @@ -189,15 +215,42 @@ ESX.RegisterCommand('giveaccountmoney', 'admin', function(xPlayer, args, showErr return showError(TranslateCap('command_giveaccountmoney_invalid')) end args.playerId.addAccountMoney(args.account, args.amount, "Government Grant") - if Config.AdminLogging then - ESX.DiscordLogFields("UserActions", "Give Account Money /giveaccountmoney Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, - { name = "Target", value = args.playerId.name, inline = true }, - { name = "Account", value = args.account, inline = true }, - { name = "Amount", value = args.amount, inline = true }, - }) + + local accountText = nil + if args.account == 'money' then + accountText = "Bargeld" + elseif args.account == 'bank' then + accountText = "auf dein Konto" + else + accountText = "Geld" end + + if xPlayer ~= false then + TriggerClientEvent('okokNotify:Alert', args.playerId.source, "System", "Du hast "..args.amount.."$ "..accountText.." von "..GetPlayerName(xPlayer.source).." erhalten!", 10000, 'group') + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "System", "Du hast "..args.amount.."$ an "..GetPlayerName(args.playerId.source).." gegeben!", 10000, 'group') + if Config.AdminLogging then + ESX.DiscordLogFields("UserActions", "Give Account Money /giveaccountmoney Triggered!", "pink", { + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, + { name = "Target", value = args.playerId.name, inline = true }, + { name = "Account", value = args.account, inline = true }, + { name = "Amount", value = args.amount, inline = true }, + }) + end + else -- console + TriggerClientEvent('okokNotify:Alert', args.playerId.source, "System", "Du hast "..args.amount.."$ "..accountText.." von dem System erhalten!", 10000, 'group') + print("Du hast "..GetPlayerName(args.playerId.source).." "..args.amount.."$ gegeben.") + if Config.AdminLogging then + ESX.DiscordLogFields("UserActions", "Give Account Money /giveaccountmoney Triggered!", "pink", { + { name = "Player", value = "System", inline = true }, + { name = "ID", value = "Console", inline = true }, + { name = "Target", value = args.playerId.name, inline = true }, + { name = "Account", value = args.account, inline = true }, + { name = "Amount", value = args.amount, inline = true }, + }) + end + end + end, true, { help = TranslateCap('command_giveaccountmoney'), validate = true, @@ -215,8 +268,8 @@ ESX.RegisterCommand('removeaccountmoney', 'admin', function(xPlayer, args, showE args.playerId.removeAccountMoney(args.account, args.amount, "Government Tax") if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Remove Account Money /removeaccountmoney Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Target", value = args.playerId.name, inline = true }, { name = "Account", value = args.account, inline = true }, { name = "Amount", value = args.amount, inline = true }, @@ -237,8 +290,8 @@ if not Config.OxInventory then args.playerId.addInventoryItem(args.item, args.count) if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Give Item /giveitem Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Target", value = args.playerId.name, inline = true }, { name = "Item", value = args.item, inline = true }, { name = "Quantity", value = args.count, inline = true }, @@ -261,8 +314,8 @@ if not Config.OxInventory then args.playerId.addWeapon(args.weapon, args.ammo) if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Give Weapon /giveweapon Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Target", value = args.playerId.name, inline = true }, { name = "Weapon", value = args.weapon, inline = true }, { name = "Ammo", value = args.ammo, inline = true }, @@ -285,8 +338,8 @@ if not Config.OxInventory then args.playerId.addWeaponAmmo(args.weapon, args.ammo) if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Give Ammunition /giveammo Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Target", value = args.playerId.name, inline = true }, { name = "Weapon", value = args.weapon, inline = true }, { name = "Ammo", value = args.ammo, inline = true }, @@ -314,8 +367,8 @@ if not Config.OxInventory then if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Give Weapon Component /giveweaponcomponent Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Target", value = args.playerId.name, inline = true }, { name = "Weapon", value = args.weaponName, inline = true }, { name = "Component", value = args.componentName, inline = true }, @@ -347,8 +400,8 @@ ESX.RegisterCommand({ 'clearall', 'clsall' }, 'admin', function(xPlayer) TriggerClientEvent('chat:clear', -1) if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Clear Chat /clearall Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, }) end end, true, { help = TranslateCap('command_clearall') }) @@ -367,8 +420,8 @@ if not Config.OxInventory then TriggerEvent('esx:playerInventoryCleared', args.playerId) if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Clear Inventory /clearinventory Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Target", value = args.playerId.name, inline = true }, }) end @@ -387,8 +440,8 @@ if not Config.OxInventory then TriggerEvent('esx:playerLoadoutCleared', args.playerId) if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "/clearloadout Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Target", value = args.playerId.name, inline = true }, }) end @@ -401,7 +454,7 @@ if not Config.OxInventory then }) end -ESX.RegisterCommand('setgroup', 'admin', function(xPlayer, args) +--[[ ESX.RegisterCommand('setgroup', 'admin', function(xPlayer, args) if not args.playerId then args.playerId = xPlayer.source end if args.group == "superadmin" then args.group = "admin" @@ -410,8 +463,8 @@ ESX.RegisterCommand('setgroup', 'admin', function(xPlayer, args) args.playerId.setGroup(args.group) if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "/setgroup Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Target", value = args.playerId.name, inline = true }, { name = "Group", value = args.group, inline = true }, }) @@ -423,7 +476,147 @@ end, true, { { name = 'playerId', help = TranslateCap('commandgeneric_playerid'), type = 'player' }, { name = 'group', help = TranslateCap('command_setgroup_group'), type = 'string' }, } -}) +}) ]] + +ESX.RegisterCommand('setgroup', 'admin', function(xPlayer, args, showError) + +local targetId = tonumber(args.playerId) + local targetGroup = tostring(args.group) + local xTarget = ESX.GetPlayerFromId(targetId) + local targetOldGroup = "Nicht definiert" + local textPlayer = "FEHLER" + local textTarget = "FEHLER" + if xTarget ~= nil then + + if xTarget.getGroup() == "user" then + targetOldGroup = "User" + end + if xTarget.getGroup() == "team" then + targetOldGroup = "Teammitglied" + end + if xTarget.getGroup() == "mod" then + targetOldGroup = "Moderator" + end + if xTarget.getGroup() == "fahrzeugmanager" then + targetOldGroup = "Fahrzeugmanager" + end + if xTarget.getGroup() == "support_leitung" then + targetOldGroup = "Supportleitung" + end + if xTarget.getGroup() == "admin" then + targetOldGroup = "Admin" + end + if xTarget.getGroup() == "super_admin" then + targetOldGroup = "Superadmin" + end + if xTarget.getGroup() == "entwickler" then + targetOldGroup = "Entwickler" + end + if xTarget.getGroup() == "projektleitung" then + targetOldGroup = "Projektleitung" + end + + if targetGroup == "user" or targetGroup == "team" or targetGroup == "mod" or targetGroup == "fahrzeugmanager" or targetGroup == "support_leitung" or targetGroup == "admin" or targetGroup == "super_admin" or targetGroup == "entwickler" or targetGroup == "projektleitung" then + if targetId ~= "0" and xTarget ~= nil and xPlayer ~= false then + if targetGroup == "user" then + textPlayer = "Du hast die Gruppe von "..GetPlayerName(targetId).." von "..targetOldGroup.." auf User gesetzt." + textTarget = ""..GetPlayerName(xPlayer.source).." hat deine Gruppe von "..targetOldGroup.." auf User gesetzt." + end + if targetGroup == "team" then + textPlayer = "Du hast die Gruppe von "..GetPlayerName(targetId).." von "..targetOldGroup.." auf Teammitglied gesetzt." + textTarget = ""..GetPlayerName(xPlayer.source).." hat deine Gruppe von "..targetOldGroup.." auf Teammitglied gesetzt." + end + if targetGroup == "mod" then + textPlayer = "Du hast die Gruppe von "..GetPlayerName(targetId).." von "..targetOldGroup.." auf Moderator gesetzt." + textTarget = ""..GetPlayerName(xPlayer.source).." hat deine Gruppe von "..targetOldGroup.." auf Moderator gesetzt." + end + if targetGroup == "fahrzeugmanager" then + textPlayer = "Du hast die Gruppe von "..GetPlayerName(targetId).." von "..targetOldGroup.." auf Fahrzeugmanager gesetzt." + textTarget = ""..GetPlayerName(xPlayer.source).." hat deine Gruppe von "..targetOldGroup.." auf Fahrzeugmanager gesetzt." + end + if targetGroup == "support_leitung" then + textPlayer = "Du hast die Gruppe von "..GetPlayerName(targetId).." von "..targetOldGroup.." auf Supportleitung gesetzt." + textTarget = ""..GetPlayerName(xPlayer.source).." hat deine Gruppe von "..targetOldGroup.." auf Supportleitung gesetzt." + end + if targetGroup == "admin" then + textPlayer = "Du hast die Gruppe von "..GetPlayerName(targetId).." von "..targetOldGroup.." auf Admin gesetzt." + textTarget = ""..GetPlayerName(xPlayer.source).." hat deine Gruppe von "..targetOldGroup.." auf Admin gesetzt." + end + if targetGroup == "super_admin" then + textPlayer = "Du hast die Gruppe von "..GetPlayerName(targetId).." von "..targetOldGroup.." auf Superadmin gesetzt." + textTarget = ""..GetPlayerName(xPlayer.source).." hat deine Gruppe von "..targetOldGroup.." auf Superadmin gesetzt." + end + if targetGroup == "entwickler" then + textPlayer = "Du hast die Gruppe von "..GetPlayerName(targetId).." von "..targetOldGroup.." auf Entwickler gesetzt." + textTarget = ""..GetPlayerName(xPlayer.source).." hat deine Gruppe von "..targetOldGroup.." auf Entwickler gesetzt." + end + if targetGroup == "projektleitung" then + textPlayer = "Du hast die Gruppe von "..GetPlayerName(targetId).." von "..targetOldGroup.." auf Projektleitung gesetzt." + textTarget = ""..GetPlayerName(xPlayer.source).." hat deine Gruppe von "..targetOldGroup.." auf Projektleitung gesetzt." + end + end + + if xPlayer == false then + textTarget = "Die Projektleitung hat deine Gruppe von "..xTarget.getGroup().." auf "..targetGroup.." gesetzt." + xTarget.setGroup(args.group) + exports['JD_logs']:createLog({ + EmbedMessage = '**Die Projektleitung** hat **'..GetPlayerName(args.playerId).."**'s Gruppe auf **"..args.group.."** gesetzt.", + player_id = args.playerId, + color = '#000000', + channel = 'setgroup', + screenshot = false + }) + TriggerClientEvent('okokNotify:Alert', args.playerId, "Berechtigung", textTarget, 5000, 'group') + print("Gruppe von "..GetPlayerName(targetId).." wurde von "..targetOldGroup.." auf "..targetGroup.." gesetzt.") + end + + + if xPlayer.getGroup() == "projektleitung" or xPlayer.getGroup() == "super_admin" then + if xPlayer.getGroup() == "projektleitung" then + if not args.playerId then args.playerId = xPlayer.source end + --args.playerId.setGroup(args.group) + xTarget.setGroup(args.group) + exports['JD_logs']:createLog({ + EmbedMessage = '**'..GetPlayerName(xPlayer.source)..'** hat **'..GetPlayerName(args.playerId).."**'s Gruppe auf **"..args.group.."** gesetzt.", + player_id = xPlayer.source, + player_2_id = args.playerId, + color = '#000000', + channel = 'setgroup', + screenshot = false + }) + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "Berechtigung", textPlayer, 5000, 'group') + TriggerClientEvent('okokNotify:Alert', args.playerId, "Berechtigung", textTarget, 5000, 'group') + elseif xPlayer.getGroup() == "super_admin" and xTarget.getGroup() ~= "projektleitung" and args.group ~= "projektleitung" and args.group ~= "super_admin" and args.group ~= "entwickler" then + if not args.playerId then args.playerId = xPlayer.source end + --args.playerId.setGroup(args.group) + xTarget.setGroup(args.group) + exports['JD_logs']:createLog({ + EmbedMessage = '**'..GetPlayerName(xPlayer.source)..'** hat **'..GetPlayerName(args.playerId).."**'s Gruppe auf **"..args.group.."** gesetzt.", + player_id = xPlayer.source, + player_2_id = args.playerId, + color = '#000000', + channel = 'setgroup', + screenshot = false + }) + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "Berechtigung", textPlayer, 5000, 'group') + TriggerClientEvent('okokNotify:Alert', args.playerId, "Berechtigung", textTarget, 5000, 'group') + else + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "System", "Du kannst als Superadmin nur die Gruppen user, team, support_leitung, mod, fahrzeugmanager und admin setzen. Projektleitung und Entwickler kannst du nicht ändern.", 5000, 'error') + end + else + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "System", "Nur die Projektleitung und Superadmins können Gruppen setzen.", 5000, 'error') + end + else + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "System", "Die eingegebene Gruppe existiert nicht!", 5000, 'error') + end + else + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "System", "Keinen Bürger gefunden!", 5000, 'error') + end +end, true, {help = _U('command_setgroup'), validate = true, arguments = { + {name = 'playerId', help = _U('commandgeneric_playerid'), type = 'playerId'}, + {name = 'group', help = _U('command_setgroup_group'), type = 'string'}, +}}) + ESX.RegisterCommand('save', 'admin', function(_, args) Core.SavePlayer(args.playerId) @@ -447,13 +640,14 @@ end, true) ESX.RegisterCommand('job', { "user", "admin" }, function(xPlayer, _, _) print(('%s, your job is: ^5%s^0 - ^5%s^0'):format(xPlayer.getName(), xPlayer.getJob().name, xPlayer.getJob().grade_label)) -end, false) +end, true) ESX.RegisterCommand('info', { "user", "admin" }, function(xPlayer) local job = xPlayer.getJob().name + local jobgrade = xPlayer.getJob().grade_name print(('^2ID: ^5%s^0 | ^2Name: ^5%s^0 | ^2Group: ^5%s^0 | ^2Job: ^5%s^0'):format(xPlayer.source, xPlayer.getName(), xPlayer.getGroup(), job)) -end, false) +end, true) ESX.RegisterCommand('coords', "admin", function(xPlayer) local ped = GetPlayerPed(xPlayer.source) @@ -461,30 +655,30 @@ ESX.RegisterCommand('coords', "admin", function(xPlayer) local heading = GetEntityHeading(ped) print(('Coords - Vector3: ^5%s^0'):format(vector3(coords.x, coords.y, coords.z))) print(('Coords - Vector4: ^5%s^0'):format(vector4(coords.x, coords.y, coords.z, heading))) -end, false) +end, true) ESX.RegisterCommand('tpm', "admin", function(xPlayer) xPlayer.triggerEvent("esx:tpm") if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Admin Teleport /tpm Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, }) end -end, false) +end, true) ESX.RegisterCommand('goto', "admin", function(xPlayer, args) local targetCoords = args.playerId.getCoords() xPlayer.setCoords(targetCoords) if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Admin Teleport /goto Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Target", value = args.playerId.name, inline = true }, { name = "Target Coords", value = targetCoords, inline = true }, }) end -end, false, { +end, true, { help = TranslateCap('command_goto'), validate = true, arguments = { @@ -498,13 +692,13 @@ ESX.RegisterCommand('bring', "admin", function(xPlayer, args) args.playerId.setCoords(playerCoords) if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Admin Teleport /bring Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Target", value = args.playerId.name, inline = true }, { name = "Target Coords", value = targetCoords, inline = true }, }) end -end, false, { +end, true, { help = TranslateCap('command_bring'), validate = true, arguments = { @@ -516,8 +710,8 @@ ESX.RegisterCommand('kill', "admin", function(xPlayer, args) args.playerId.triggerEvent("esx:killPlayer") if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Kill Command /kill Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Target", value = args.playerId.name, inline = true }, }) end @@ -533,8 +727,8 @@ ESX.RegisterCommand('freeze', "admin", function(xPlayer, args) args.playerId.triggerEvent('esx:freezePlayer', "freeze") if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Admin Freeze /freeze Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Target", value = args.playerId.name, inline = true }, }) end @@ -550,8 +744,8 @@ ESX.RegisterCommand('unfreeze', "admin", function(xPlayer, args) args.playerId.triggerEvent('esx:freezePlayer', "unfreeze") if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Admin UnFreeze /unfreeze Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, { name = "Target", value = args.playerId.name, inline = true }, }) end @@ -567,17 +761,18 @@ ESX.RegisterCommand("noclip", 'admin', function(xPlayer) xPlayer.triggerEvent('esx:noclip') if Config.AdminLogging then ESX.DiscordLogFields("UserActions", "Admin NoClip /noclip Triggered!", "pink", { - { name = "Player", value = xPlayer and xPlayer.name or "Server Console", inline = true }, - { name = "ID", value = xPlayer and xPlayer.source or "Unknown ID", inline = true }, + { name = "Player", value = xPlayer.name, inline = true }, + { name = "ID", value = xPlayer.source, inline = true }, }) end end, false) ESX.RegisterCommand('players', "admin", function() - local xPlayers = ESX.GetExtendedPlayers() -- Returns all xPlayers + local xPlayers = ESX.GetExtendedPlayers() -- Returns all xPlayers print(('^5%s^2 online player(s)^0'):format(#xPlayers)) - for i = 1, #(xPlayers) do + for i = 1, #(xPlayers) do local xPlayer = xPlayers[i] - print(('^1[^2ID: ^5%s^0 | ^2Name : ^5%s^0 | ^2Group : ^5%s^0 | ^2Identifier : ^5%s^1]^0\n'):format(xPlayer.source, xPlayer.getName(), xPlayer.getGroup(), xPlayer.identifier)) - end + print(('^1[^2ID: ^5%s^0 | ^2Name : ^5%s^0 | ^2Group : ^5%s^0 | ^2Identifier : ^5%s^1]^0\n'):format( + xPlayer.source, xPlayer.getName(), xPlayer.getGroup(), xPlayer.identifier)) + end end, true) diff --git a/[core]/es_extended/server/common.lua b/[core]/es_extended/server/common.lua index 1f87bf3b4..58bc5b8dd 100644 --- a/[core]/es_extended/server/common.lua +++ b/[core]/es_extended/server/common.lua @@ -1,7 +1,6 @@ ESX = {} ESX.Players = {} ESX.Jobs = {} -ESX.JobsPlayerCount = {} ESX.Items = {} Core = {} Core.UsableItemsCallbacks = {} @@ -14,11 +13,6 @@ Core.playersByIdentifier = {} Core.vehicleTypesByModel = {} -AddEventHandler("esx:getSharedObject", function() - local Invoke = GetInvokingResource() - print(("[^1ERROR^7] Resource ^5%s^7 Used the ^5getSharedObject^7 Event, this event ^1no longer exists!^7 Visit https://documentation.esx-framework.org/tutorials/tutorials-esx/sharedevent for how to fix!"):format(Invoke)) -end) - exports('getSharedObject', function() return ESX end) @@ -32,9 +26,8 @@ end local function StartDBSync() CreateThread(function() - local interval = 10 * 60 * 1000 while true do - Wait(interval) + Wait(10 * 60 * 1000) Core.SavePlayers() end end) @@ -86,3 +79,73 @@ RegisterNetEvent("esx:ReturnVehicleType", function(Type, Request) Core.ClientCallbacks[Request] = nil end end) + + +-- Jobs Creator integration (jobs_creator) +RegisterNetEvent('esx:refreshJobs') +AddEventHandler('esx:refreshJobs', function() + MySQL.Async.fetchAll('SELECT * FROM jobs', {}, function(jobs) + for k,v in ipairs(jobs) do + ESX.Jobs[v.name] = v + ESX.Jobs[v.name].grades = {} + end + + MySQL.Async.fetchAll('SELECT * FROM job_grades', {}, function(jobGrades) + for k,v in ipairs(jobGrades) do + if ESX.Jobs[v.job_name] then + ESX.Jobs[v.job_name].grades[tostring(v.grade)] = v + else + print(('[es_extended] [^3WARNING^7] Ignoring job grades for "%s" due to missing job'):format(v.job_name)) + end + end + + for k2,v2 in pairs(ESX.Jobs) do + if ESX.Table.SizeOf(v2.grades) == 0 then + ESX.Jobs[v2.name] = nil + print(('[es_extended] [^3WARNING^7] Ignoring job "%s" due to no job grades found'):format(v2.name)) + end + end + end) + end) +end) + + +RegisterServerEvent('esx:addFraktion') +AddEventHandler('esx:addFraktion', function(job, label, grade_name, grade_label) + if ESX.DoesJobExist(job, 0) then + print("^6[ERROR]^0 job (fracation) already exists") + return + else + ESX.Jobs[job] = { + name = job, + label = label, + type = 'fraktion', + whitelisted = 0, + grades = { + ['0'] = { + job_name = job, + grade = 0, + name = grade_name, + label = grade_label, + salary = 0, + skin_male = '{}', + skin_female = '{}', + } + } + } + return true + end +end) + +RegisterServerEvent('esx:reloadFraktion') +AddEventHandler('esx:reloadFraktion', function(fraktion, grades) + if not fraktion or not grades or not ESX.Jobs[fraktion] then + print("^6[ERROR:SERVER]^0 error while reloading fraction grades") + return false + end + + ESX.Jobs[fraktion].grades = {} + for r,p in pairs(grades) do + ESX.Jobs[fraktion].grades[tostring(p.grade)] = p + end +end) \ No newline at end of file diff --git a/[core]/es_extended/server/functions.lua b/[core]/es_extended/server/functions.lua index 49ee3a8e9..2b7389c6f 100644 --- a/[core]/es_extended/server/functions.lua +++ b/[core]/es_extended/server/functions.lua @@ -113,18 +113,11 @@ function ESX.RegisterCommand(name, group, cb, allowConsole, suggestion) local merge = table.concat(args, " ") newArgs[v.name] = string.sub(merge, lenght) - elseif v.type == 'coordinate' then - local coord = tonumber(args[k]:match("(-?%d+%.?%d*)")) - if(not coord) then - error = TranslateCap('commanderror_argumentmismatch_number', k) - else - newArgs[v.name] = coord - end - end + end end --backwards compatibility - if v.validate ~= nil and not v.validate then + if not v.validate and not v.type then error = nil end @@ -164,14 +157,7 @@ function ESX.RegisterCommand(name, group, cb, allowConsole, suggestion) end end -local function updateHealthAndArmorInMetadata(xPlayer) - local ped = GetPlayerPed(xPlayer.source) - xPlayer.setMeta('health', GetEntityHealth(ped)) - xPlayer.setMeta('armor',GetPedArmour(ped)) -end - function Core.SavePlayer(xPlayer, cb) - updateHealthAndArmorInMetadata(xPlayer) local parameters = { json.encode(xPlayer.getAccounts(true)), xPlayer.job.name, @@ -209,7 +195,6 @@ function Core.SavePlayers(cb) local parameters = {} for _, xPlayer in pairs(ESX.Players) do - updateHealthAndArmorInMetadata(xPlayer) parameters[#parameters + 1] = { json.encode(xPlayer.getAccounts(true)), xPlayer.job.name, @@ -263,11 +248,7 @@ function ESX.GetExtendedPlayers(key, val) end else for _, v in pairs(ESX.Players) do - if key then - if (key == 'job' and v.job.name == val) or v[key] == val then - xPlayers[#xPlayers + 1] = v - end - else + if (key == 'job' and v.job.name == val) or v[key] == val then xPlayers[#xPlayers + 1] = v end end @@ -276,34 +257,6 @@ function ESX.GetExtendedPlayers(key, val) return xPlayers end -function ESX.GetNumPlayers(key, val) - if not key then - return #GetPlayers() - end - - if type(val) == "table" then - local numPlayers = {} - if key == "job" then - for _, v in ipairs(val) do - numPlayers[v] = (ESX.JobsPlayerCount[v] or 0) - end - return numPlayers - end - - local filteredPlayers = ESX.GetExtendedPlayers(key, val) - for i, v in pairs(filteredPlayers) do - numPlayers[i] = (#v or 0) - end - return numPlayers - end - - if key == "job" then - return (ESX.JobsPlayerCount[val] or 0) - end - - return #ESX.GetExtendedPlayers(key, val) -end - function ESX.GetPlayerFromId(source) return ESX.Players[tonumber(source)] end @@ -317,9 +270,12 @@ function ESX.GetIdentifier(playerId) if fxDk == 1 then return "ESX-DEBUG-LICENCE" end - - local identifier = GetPlayerIdentifierByType(playerId, 'license') - return identifier and identifier:gsub('license:', '') + for _, v in ipairs(GetPlayerIdentifiers(playerId)) do + if string.match(v, 'license:') then + local identifier = string.gsub(v, 'license:', '') + return identifier + end + end end ---@param model string|number @@ -511,19 +467,19 @@ function ESX.GetUsableItems() end if not Config.OxInventory then - function ESX.CreatePickup(itemType, name, count, label, playerId, components, tintIndex, coords) + function ESX.CreatePickup(type, name, count, label, playerId, components, tintIndex) local pickupId = (Core.PickupId == 65635 and 0 or Core.PickupId + 1) local xPlayer = ESX.Players[playerId] - coords = ( (type(coords) == "vector3" or type(coords) == "vector4") and coords.xyz or xPlayer.getCoords(true)) + local coords = xPlayer.getCoords() - Core.Pickups[pickupId] = { type = itemType, name = name, count = count, label = label, coords = coords } + Core.Pickups[pickupId] = { type = type, name = name, count = count, label = label, coords = coords } - if itemType == 'item_weapon' then + if type == 'item_weapon' then Core.Pickups[pickupId].components = components Core.Pickups[pickupId].tintIndex = tintIndex end - TriggerClientEvent('esx:createPickup', -1, pickupId, label, coords, itemType, name, components, tintIndex) + TriggerClientEvent('esx:createPickup', -1, pickupId, label, coords, type, name, components, tintIndex) Core.PickupId = pickupId end end diff --git a/[core]/es_extended/server/main.lua b/[core]/es_extended/server/main.lua index 91b25bc71..3d0a64334 100644 --- a/[core]/es_extended/server/main.lua +++ b/[core]/es_extended/server/main.lua @@ -9,10 +9,6 @@ if Config.Multichar then newPlayer = newPlayer .. ', `firstname` = ?, `lastname` = ?, `dateofbirth` = ?, `sex` = ?, `height` = ?' end -if Config.StartingInventoryItems then - newPlayer = newPlayer .. ', `inventory` = ?' -end - if Config.Multichar or Config.Identity then loadPlayer = loadPlayer .. ', `firstname`, `lastname`, `dateofbirth`, `sex`, `height`' end @@ -82,15 +78,16 @@ function createESXPlayer(identifier, playerId, data) defaultGroup = "admin" end - local parameters = Config.Multichar and { json.encode(accounts), identifier, defaultGroup, data.firstname, data.lastname, data.dateofbirth, data.sex, data.height } or { json.encode(accounts), identifier, defaultGroup } - - if Config.StartingInventoryItems then - table.insert(parameters, json.encode(Config.StartingInventoryItems)) + if not Config.Multichar then + MySQL.prepare(newPlayer, { json.encode(accounts), identifier, defaultGroup }, function() + loadESXPlayer(identifier, playerId, true) + end) + else + MySQL.prepare(newPlayer, + { json.encode(accounts), identifier, defaultGroup, data.firstname, data.lastname, data.dateofbirth, data.sex, data.height }, function() + loadESXPlayer(identifier, playerId, true) + end) end - - MySQL.prepare(newPlayer, parameters, function() - loadESXPlayer(identifier, playerId, true) - end) end if not Config.Multichar then @@ -164,7 +161,7 @@ function loadESXPlayer(identifier, playerId, isNew) jobObject, gradeObject = ESX.Jobs[job], ESX.Jobs[job].grades[grade] else print(('[^3WARNING^7] Ignoring invalid job for ^5%s^7 [job: ^5%s^7, grade: ^5%s^7]'):format(identifier, job, grade)) - job, grade = 'unemployed', '0' + job, grade = 'arbeitslos', '0' jobObject, gradeObject = ESX.Jobs[job], ESX.Jobs[job].grades[grade] end @@ -325,12 +322,6 @@ function loadESXPlayer(identifier, playerId, isNew) xPlayer.set('height', userData.height) end end - --saved player health and armor in metadata - local ped = GetPlayerPed(xPlayer.source) - if ped then - xPlayer.setMeta('health', xPlayer.getMeta('health') or GetEntityHealth(ped)) - xPlayer.setMeta('armor', xPlayer.getMeta('armor') or GetPedArmour(ped)) - end TriggerEvent('esx:playerLoaded', playerId, xPlayer, isNew) @@ -368,17 +359,17 @@ function loadESXPlayer(identifier, playerId, isNew) end end xPlayer.triggerEvent('esx:registerSuggestions', Core.RegisteredCommands) - print(('[^2INFO^0] Player ^5"%s"^0 has connected to the server. ID: ^5%s^7'):format(xPlayer.getName(), playerId)) + print(('[^2INFO^0] Player ^5"%s"^0 - ^5"%s"^0 has connected to the server. ID: ^5%s^7'):format(GetPlayerName(playerId), xPlayer.getName(), playerId)) end -AddEventHandler('chatMessage', function(playerId, _, message) +--[[ AddEventHandler('chatMessage', function(playerId, _, message) local xPlayer = ESX.GetPlayerFromId(playerId) if message:sub(1, 1) == '/' and playerId > 0 then CancelEvent() local commandName = message:sub(1):gmatch("%w+")() xPlayer.showNotification(TranslateCap('commanderror_invalidcommand', commandName)) end -end) +end) ]] AddEventHandler('playerDropped', function(reason) local playerId = source @@ -386,10 +377,7 @@ AddEventHandler('playerDropped', function(reason) if xPlayer then TriggerEvent('esx:playerDropped', playerId, reason) - local job = xPlayer.getJob().name - local currentJob = ESX.JobsPlayerCount[job] - ESX.JobsPlayerCount[job] = ((currentJob and currentJob > 0) and currentJob or 1) - 1 - GlobalState[("%s:count"):format(job)] = ESX.JobsPlayerCount[job] + Core.playersByIdentifier[xPlayer.identifier] = nil Core.SavePlayer(xPlayer, function() ESX.Players[playerId] = nil @@ -397,26 +385,6 @@ AddEventHandler('playerDropped', function(reason) end end) -AddEventHandler("esx:playerLoaded", function(_, xPlayer) - local job = xPlayer.getJob().name - local jobKey = ("%s:count"):format(job) - - ESX.JobsPlayerCount[job] = (ESX.JobsPlayerCount[job] or 0) + 1 - GlobalState[jobKey] = ESX.JobsPlayerCount[job] -end) - -AddEventHandler("esx:setJob", function(_, job, lastJob) - local lastJobKey = ('%s:count'):format(lastJob.name) - local jobKey = ('%s:count'):format(job.name) - local currentLastJob = ESX.JobsPlayerCount[lastJob.name] - - ESX.JobsPlayerCount[lastJob.name] = ((currentLastJob and currentLastJob > 0) and currentLastJob or 1) - 1 - ESX.JobsPlayerCount[job.name] = (ESX.JobsPlayerCount[job.name] or 0) + 1 - - GlobalState[lastJobKey] = ESX.JobsPlayerCount[lastJob.name] - GlobalState[jobKey] = ESX.JobsPlayerCount[job.name] -end) - AddEventHandler('esx:playerLogout', function(playerId, cb) local xPlayer = ESX.GetPlayerFromId(playerId) if xPlayer then @@ -444,7 +412,7 @@ if not Config.OxInventory then end) RegisterNetEvent('esx:giveInventoryItem') - AddEventHandler('esx:giveInventoryItem', function(target, itemType, itemName, itemCount) + AddEventHandler('esx:giveInventoryItem', function(target, type, itemName, itemCount) local playerId = source local sourceXPlayer = ESX.GetPlayerFromId(playerId) local targetXPlayer = ESX.GetPlayerFromId(target) @@ -454,7 +422,7 @@ if not Config.OxInventory then return end - if itemType == 'item_standard' then + if type == 'item_standard' then local sourceItem = sourceXPlayer.getInventoryItem(itemName) if itemCount > 0 and sourceItem.count >= itemCount then @@ -470,7 +438,7 @@ if not Config.OxInventory then else sourceXPlayer.showNotification(TranslateCap('imp_invalid_quantity')) end - elseif itemType == 'item_account' then + elseif type == 'item_account' then if itemCount > 0 and sourceXPlayer.getAccount(itemName).money >= itemCount then sourceXPlayer.removeAccountMoney(itemName, itemCount, "Gave to " .. targetXPlayer.name) targetXPlayer.addAccountMoney(itemName, itemCount, "Received from " .. sourceXPlayer.name) @@ -481,7 +449,7 @@ if not Config.OxInventory then else sourceXPlayer.showNotification(TranslateCap('imp_invalid_amount')) end - elseif itemType == 'item_weapon' then + elseif type == 'item_weapon' then if sourceXPlayer.hasWeapon(itemName) then local weaponLabel = ESX.GetWeaponLabel(itemName) if not targetXPlayer.hasWeapon(itemName) then @@ -514,7 +482,7 @@ if not Config.OxInventory then targetXPlayer.showNotification(TranslateCap('received_weapon_hasalready', sourceXPlayer.name, weaponLabel)) end end - elseif itemType == 'item_ammo' then + elseif type == 'item_ammo' then if sourceXPlayer.hasWeapon(itemName) then local _, weapon = sourceXPlayer.getWeapon(itemName) @@ -541,11 +509,11 @@ if not Config.OxInventory then end) RegisterNetEvent('esx:removeInventoryItem') - AddEventHandler('esx:removeInventoryItem', function(itemType, itemName, itemCount) + AddEventHandler('esx:removeInventoryItem', function(type, itemName, itemCount) local playerId = source local xPlayer = ESX.GetPlayerFromId(playerId) - if itemType == 'item_standard' then + if type == 'item_standard' then if itemCount == nil or itemCount < 1 then xPlayer.showNotification(TranslateCap('imp_invalid_quantity')) else @@ -560,7 +528,7 @@ if not Config.OxInventory then xPlayer.showNotification(TranslateCap('threw_standard', itemCount, xItem.label)) end end - elseif itemType == 'item_account' then + elseif type == 'item_account' then if itemCount == nil or itemCount < 1 then xPlayer.showNotification(TranslateCap('imp_invalid_amount')) else @@ -575,7 +543,7 @@ if not Config.OxInventory then xPlayer.showNotification(TranslateCap('threw_account', ESX.Math.GroupDigits(itemCount), string.lower(account.label))) end end - elseif itemType == 'item_weapon' then + elseif type == 'item_weapon' then itemName = string.upper(itemName) if xPlayer.hasWeapon(itemName) then @@ -616,12 +584,6 @@ if not Config.OxInventory then local pickup, xPlayer, success = Core.Pickups[pickupId], ESX.GetPlayerFromId(source) if pickup then - local playerPickupDistance = #(pickup.coords - xPlayer.getCoords(true)) - if (playerPickupDistance > 5.0) then - print(('[^3WARNING^7] Player Detected Cheating (Out of range pickup): ^5%s^7'):format(xPlayer.getIdentifier())) - return - end - if pickup.type == 'item_standard' then if xPlayer.canCarryItem(pickup.name, pickup.count) then xPlayer.addInventoryItem(pickup.name, pickup.count) @@ -737,31 +699,15 @@ AddEventHandler('txAdmin:events:serverShuttingDown', function() Core.SavePlayers() end) -local DoNotUse = { - ['essentialmode'] = true, - ['es_admin2'] = true, - ['basic-gamemode'] = true, - ['mapmanager'] = true, - ['fivem-map-skater'] = true, - ['fivem-map-hipster'] = true, - ['qb-core'] = true, - ['default_spawnpoint'] = true, -} - -AddEventHandler('onResourceStart', function(key) - if DoNotUse[string.lower(key)] then - while GetResourceState(key) ~= 'started' do - Wait(0) - end - - StopResource(key) - print(("[^1ERROR^7] WE STOPPED A RESOURCE THAT WILL BREAK ^1ESX^7, PLEASE REMOVE ^5%s^7"):format(key)) - end -end) +AddEventHandler("esx:getSharedObject", function(cb) + cb(ESX) + end) -for key in pairs(DoNotUse) do - if GetResourceState(key) == 'started' or GetResourceState(key) == 'starting' then - StopResource(key) - print(("[^1ERROR^7] WE STOPPED A RESOURCE THAT WILL BREAK ^1ESX^7, PLEASE REMOVE ^5%s^7"):format(key)) +CreateThread(function() +while true do + Wait(15 * 60000) + for _, xPlayer in pairs(ESX.GetExtendedPlayers()) do + exports['ak4y-battlepass']:battlepassAddXp(xPlayer, 50) end end +end) \ No newline at end of file diff --git a/[core]/es_extended/server/modules/callback.lua b/[core]/es_extended/server/modules/callback.lua index d78e9d4a7..d126c2393 100644 --- a/[core]/es_extended/server/modules/callback.lua +++ b/[core]/es_extended/server/modules/callback.lua @@ -41,3 +41,8 @@ RegisterNetEvent('esx:clientCallback', function(requestId, invoker, ...) clientRequests[requestId](...) clientRequests[requestId] = nil end) + + + -- Jobs Creator integration (jobs_creator) + ESX.ServerCallbacks = serverCallbacks + \ No newline at end of file diff --git a/[core]/es_extended/server/onesync.lua b/[core]/es_extended/server/onesync.lua index 9fefaa744..515b51456 100644 --- a/[core]/es_extended/server/onesync.lua +++ b/[core]/es_extended/server/onesync.lua @@ -7,34 +7,15 @@ ESX.OneSync = {} local function getNearbyPlayers(source, closest, distance, ignore) local result = {} local count = 0 - local playerPed - local playerCoords - if not distance then distance = 100 end - if type(source) == 'number' then - playerPed = GetPlayerPed(source) - + source = GetPlayerPed(source) + if not source then - error("Received invalid first argument (source); should be playerId") - return result + error("Received invalid first argument (source); should be playerId or vector3 coordinates") end - playerCoords = GetEntityCoords(playerPed) - - if not playerCoords then - error("Received nil value (playerCoords); perhaps source is nil at first place?") - return result - end - end - - if type(source) == 'vector3' then - playerCoords = source - - if not playerCoords then - error("Received nil value (playerCoords); perhaps source is nil at first place?") - return result - end + source = GetEntityCoords(GetPlayerPed(source)) end for _, xPlayer in pairs(ESX.Players) do @@ -43,18 +24,16 @@ local function getNearbyPlayers(source, closest, distance, ignore) local coords = GetEntityCoords(entity) if not closest then - local dist = #(playerCoords - coords) + local dist = #(source - coords) if dist <= distance then count = count + 1 result[count] = { id = xPlayer.source, ped = NetworkGetNetworkIdFromEntity(entity), coords = coords, dist = dist } end else - if xPlayer.source ~= source then - local dist = #(playerCoords - coords) - if dist <= (result.dist or distance) then - result = { id = xPlayer.source, ped = NetworkGetNetworkIdFromEntity(entity), coords = coords, dist = dist } - end - end + local dist = #(source - coords) + if dist <= (result.dist or distance) then + result = { id = xPlayer.source, ped = NetworkGetNetworkIdFromEntity(entity), coords = coords, dist = dist } + end end end end diff --git a/[core]/es_extended/server/paycheck.lua b/[core]/es_extended/server/paycheck.lua index 981382934..8e9f8b65a 100644 --- a/[core]/es_extended/server/paycheck.lua +++ b/[core]/es_extended/server/paycheck.lua @@ -7,11 +7,11 @@ function StartPayCheck() local job = xPlayer.job.grade_name local salary = xPlayer.job.grade_salary - if salary > 0 then - if job == 'unemployed' then -- unemployed + if salary > 0 and xPlayer.job.type ~= 'fraktion' then + if job == 'arbeitslos' then -- unemployed xPlayer.addAccountMoney('bank', salary, "Welfare Check") - TriggerClientEvent('esx:showAdvancedNotification', player, TranslateCap('bank'), TranslateCap('received_paycheck'), TranslateCap('received_help', salary), - 'CHAR_BANK_MAZE', 9) + TriggerEvent('okokBanking:AddTransferTransactionFromSocietyToP', salary, "salary", "Salary", xPlayer.identifier, xPlayer.getName()) + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "Bürgergeld", "Du hast dein Bürgergeld in höhe von "..salary.."$ bekommen. Du kannst jetzt wieder Zigaretten und Alkohol kaufen!", 8000, 'harz4') if Config.LogPaycheck then ESX.DiscordLogFields("Paycheck", "Paycheck - Unemployment Benefits", "green", { { name = "Player", value = xPlayer.name, inline = true }, @@ -34,10 +34,10 @@ function StartPayCheck() }) end - TriggerClientEvent('esx:showAdvancedNotification', player, TranslateCap('bank'), TranslateCap('received_paycheck'), - TranslateCap('received_salary', salary), 'CHAR_BANK_MAZE', 9) + TriggerEvent('okokBanking:AddTransferTransactionFromSocietyToP', salary, "salary", "Salary", xPlayer.identifier, xPlayer.getName()) + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "Gehalt", "Du hast dein Gehalt in höhe von "..salary.."$ erhalten.", 8000, 'payment') else - TriggerClientEvent('esx:showAdvancedNotification', player, TranslateCap('bank'), '', TranslateCap('company_nomoney'), 'CHAR_BANK_MAZE', 1) + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "Gehalt", "Deine Firma hat nicht genug Geld um dich zu bezahlen.", 8000, 'paymentdenied') end end) else -- not a society @@ -49,8 +49,8 @@ function StartPayCheck() { name = "Amount", value = salary, inline = true } }) end - TriggerClientEvent('esx:showAdvancedNotification', player, TranslateCap('bank'), TranslateCap('received_paycheck'), TranslateCap('received_salary', salary), - 'CHAR_BANK_MAZE', 9) + TriggerEvent('okokBanking:AddTransferTransactionFromSocietyToP', salary, "salary", "Salary", xPlayer.identifier, xPlayer.getName()) + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "Gehalt", "Du hast dein Gehalt in höhe von "..salary.."$ erhalten.", 8000, 'payment') end end) else -- generic job @@ -62,8 +62,8 @@ function StartPayCheck() { name = "Amount", value = salary, inline = true } }) end - TriggerClientEvent('esx:showAdvancedNotification', player, TranslateCap('bank'), TranslateCap('received_paycheck'), TranslateCap('received_salary', salary), - 'CHAR_BANK_MAZE', 9) + TriggerEvent('okokBanking:AddTransferTransactionFromSocietyToP', salary, "salary", "Salary", xPlayer.identifier, xPlayer.getName()) + TriggerClientEvent('okokNotify:Alert', xPlayer.source, "Gehalt", "Du hast dein Gehalt in höhe von "..salary.."$ erhalten.", 8000, 'payment') end end end diff --git a/[core]/es_extended/version.json b/[core]/es_extended/version.json new file mode 100644 index 000000000..ed35a3e9d --- /dev/null +++ b/[core]/es_extended/version.json @@ -0,0 +1,5 @@ +{ + "version": "legacy", + "commit" : "1.9.0", + "changelog": "\n- Add PlayerOveride System, ESX Notify, ESX Progressbar and ESX TextUI" +}