Merge pull request #718 from fivemland/locale-update

refactor/feat(es_extended): small refactor and add missing locales
This commit is contained in:
P Gergő
2022-12-15 16:26:16 +01:00
committed by GitHub
5 changed files with 170 additions and 176 deletions
+151 -168
View File
@@ -512,158 +512,147 @@ AddEventHandler("esx:tpm", function()
local GetVehiclePedIsIn = GetVehiclePedIsIn
ESX.TriggerServerCallback("esx:isUserAdmin", function(admin)
if admin then
local blipMarker = GetFirstBlipInfoId(8)
if not DoesBlipExist(blipMarker) then
ESX.ShowNotification('No Waypoint Set.', true, false, 140)
return 'marker'
end
-- Fade screen to hide how clients get teleported.
DoScreenFadeOut(650)
while not IsScreenFadedOut() do
Wait(0)
end
local ped, coords = ESX.PlayerData.ped, GetBlipInfoIdCoord(blipMarker)
local vehicle = GetVehiclePedIsIn(ped, false)
local oldCoords = GetEntityCoords(ped)
-- Unpack coords instead of having to unpack them while iterating.
-- 825.0 seems to be the max a player can reach while 0.0 being the lowest.
local x, y, groundZ, Z_START = coords['x'], coords['y'], 850.0, 950.0
local found = false
if vehicle > 0 then
FreezeEntityPosition(vehicle, true)
else
FreezeEntityPosition(ped, true)
end
for i = Z_START, 0, -25.0 do
local z = i
if (i % 2) ~= 0 then
z = Z_START - i
end
NewLoadSceneStart(x, y, z, x, y, z, 50.0, 0)
local curTime = GetGameTimer()
while IsNetworkLoadingScene() do
if GetGameTimer() - curTime > 1000 then
break
end
Wait(0)
end
NewLoadSceneStop()
SetPedCoordsKeepVehicle(ped, x, y, z)
while not HasCollisionLoadedAroundEntity(ped) do
RequestCollisionAtCoord(x, y, z)
if GetGameTimer() - curTime > 1000 then
break
end
Wait(0)
end
-- Get ground coord. As mentioned in the natives, this only works if the client is in render distance.
found, groundZ = GetGroundZFor_3dCoord(x, y, z, false)
if found then
Wait(0)
SetPedCoordsKeepVehicle(ped, x, y, groundZ)
break
end
Wait(0)
end
-- Remove black screen once the loop has ended.
DoScreenFadeIn(650)
if vehicle > 0 then
FreezeEntityPosition(vehicle, false)
else
FreezeEntityPosition(ped, false)
end
if not found then
-- If we can't find the coords, set the coords to the old ones.
-- We don't unpack them before since they aren't in a loop and only called once.
SetPedCoordsKeepVehicle(ped, oldCoords['x'], oldCoords['y'], oldCoords['z'] - 1.0)
ESX.ShowNotification('Successfully Teleported', true, false, 140)
end
-- If Z coord was found, set coords in found coords.
SetPedCoordsKeepVehicle(ped, x, y, groundZ)
ESX.ShowNotification('Successfully Teleported', true, false, 140)
if not admin then
return
end
local blipMarker = GetFirstBlipInfoId(8)
if not DoesBlipExist(blipMarker) then
ESX.ShowNotification(TranslateCap('tpm_nowaypoint'), true, false, 140)
return 'marker'
end
-- Fade screen to hide how clients get teleported.
DoScreenFadeOut(650)
while not IsScreenFadedOut() do
Wait(0)
end
local ped, coords = ESX.PlayerData.ped, GetBlipInfoIdCoord(blipMarker)
local vehicle = GetVehiclePedIsIn(ped, false)
local oldCoords = GetEntityCoords(ped)
-- Unpack coords instead of having to unpack them while iterating.
-- 825.0 seems to be the max a player can reach while 0.0 being the lowest.
local x, y, groundZ, Z_START = coords['x'], coords['y'], 850.0, 950.0
local found = false
FreezeEntityPosition(vehicle > 0 and vehicle or ped, true)
for i = Z_START, 0, -25.0 do
local z = i
if (i % 2) ~= 0 then
z = Z_START - i
end
NewLoadSceneStart(x, y, z, x, y, z, 50.0, 0)
local curTime = GetGameTimer()
while IsNetworkLoadingScene() do
if GetGameTimer() - curTime > 1000 then
break
end
Wait(0)
end
NewLoadSceneStop()
SetPedCoordsKeepVehicle(ped, x, y, z)
while not HasCollisionLoadedAroundEntity(ped) do
RequestCollisionAtCoord(x, y, z)
if GetGameTimer() - curTime > 1000 then
break
end
Wait(0)
end
-- Get ground coord. As mentioned in the natives, this only works if the client is in render distance.
found, groundZ = GetGroundZFor_3dCoord(x, y, z, false)
if found then
Wait(0)
SetPedCoordsKeepVehicle(ped, x, y, groundZ)
break
end
Wait(0)
end
-- Remove black screen once the loop has ended.
DoScreenFadeIn(650)
FreezeEntityPosition(vehicle > 0 and vehicle or ped, false)
if not found then
-- If we can't find the coords, set the coords to the old ones.
-- We don't unpack them before since they aren't in a loop and only called once.
SetPedCoordsKeepVehicle(ped, oldCoords['x'], oldCoords['y'], oldCoords['z'] - 1.0)
ESX.ShowNotification(TranslateCap('tpm_success'), true, false, 140)
end
-- If Z coord was found, set coords in found coords.
SetPedCoordsKeepVehicle(ped, x, y, groundZ)
ESX.ShowNotification(TranslateCap('tpm_success'), true, false, 140)
end)
end)
local noclip = false
local noclip_pos = vector3(0, 0, 70)
local heading = 0
local function noclipThread()
while noclip do
SetEntityCoordsNoOffset(ESX.PlayerData.ped, noclip_pos.x, noclip_pos.y, noclip_pos.z, 0, 0, 0)
if IsControlPressed(1, 34) then
heading = heading + 1.5
if heading > 360 then
heading = 0
end
SetEntityHeading(ESX.PlayerData.ped, heading)
end
if IsControlPressed(1, 9) then
heading = heading - 1.5
if heading < 0 then
heading = 360
end
SetEntityHeading(ESX.PlayerData.ped, heading)
end
if IsControlPressed(1, 8) then
noclip_pos = GetOffsetFromEntityInWorldCoords(ESX.PlayerData.ped, 0.0, 1.0, 0.0)
end
if IsControlPressed(1, 32) then
noclip_pos = GetOffsetFromEntityInWorldCoords(ESX.PlayerData.ped, 0.0, -1.0, 0.0)
end
if IsControlPressed(1, 27) then
noclip_pos = GetOffsetFromEntityInWorldCoords(ESX.PlayerData.ped, 0.0, 0.0, 1.0)
end
if IsControlPressed(1, 173) then
noclip_pos = GetOffsetFromEntityInWorldCoords(ESX.PlayerData.ped, 0.0, 0.0, -1.0)
end
Wait(0)
end
end
RegisterNetEvent("esx:noclip")
AddEventHandler("esx:noclip", function(input)
ESX.TriggerServerCallback("esx:isUserAdmin", function(admin)
if admin then
local player = PlayerId()
local msg = "disabled"
if(noclip == false)then
noclip_pos = GetEntityCoords(ESX.PlayerData.ped, false)
end
noclip = not noclip
if(noclip)then
msg = "enabled"
end
TriggerEvent("chatMessage", "Noclip has been ^2^*" .. msg)
end
end)
end)
local heading = 0
CreateThread(function()
while true do
local Sleep = 1500
if(noclip)then
Sleep = 0
SetEntityCoordsNoOffset(ESX.PlayerData.ped, noclip_pos.x, noclip_pos.y, noclip_pos.z, 0, 0, 0)
if(IsControlPressed(1, 34))then
heading = heading + 1.5
if(heading > 360)then
heading = 0
end
SetEntityHeading(ESX.PlayerData.ped, heading)
end
if(IsControlPressed(1, 9))then
heading = heading - 1.5
if(heading < 0)then
heading = 360
end
SetEntityHeading(ESX.PlayerData.ped, heading)
end
if(IsControlPressed(1, 8))then
noclip_pos = GetOffsetFromEntityInWorldCoords(ESX.PlayerData.ped, 0.0, 1.0, 0.0)
end
if(IsControlPressed(1, 32))then
noclip_pos = GetOffsetFromEntityInWorldCoords(ESX.PlayerData.ped, 0.0, -1.0, 0.0)
end
if(IsControlPressed(1, 27))then
noclip_pos = GetOffsetFromEntityInWorldCoords(ESX.PlayerData.ped, 0.0, 0.0, 1.0)
end
if(IsControlPressed(1, 173))then
noclip_pos = GetOffsetFromEntityInWorldCoords(ESX.PlayerData.ped, 0.0, 0.0, -1.0)
end
if not admin then
return
end
Wait(Sleep)
end
if not noclip then
noclip_pos = GetEntityCoords(ESX.PlayerData.ped, false)
heading = GetEntityHeading(ESX.PlayerData.ped)
end
noclip = not noclip
if noclip then
CreateThread(noclipThread)
end
ESX.ShowNotification(TranslateCap('noclip_message', noclip and "enabled" or "disabled"), true, false, 140)
end)
end)
RegisterNetEvent("esx:killPlayer")
@@ -680,38 +669,32 @@ AddEventHandler("esx:freezePlayer", function(input)
SetPlayerInvincible(player, true)
elseif input == 'unfreeze' then
SetEntityCollision(ESX.PlayerData.ped, true)
FreezeEntityPosition(ESX.PlayerData.ped, false)
FreezeEntityPosition(ESX.PlayerData.ped, false)
SetPlayerInvincible(player, false)
end
end)
RegisterNetEvent("esx:GetVehicleType", function(Model, Request)
local ReturnedType = "automobile"
local Model = Model
local IsValidModel = IsModelInCdimage(Model)
if IsValidModel == true or IsValidModel == 1 then
local VehicleType = GetVehicleClassFromName(Model)
if not IsModelInCdimage(Model) then
return TriggerServerEvent("esx:ReturnVehicleType", false, Request)
end
if VehicleType == 15 then
ReturnedType = "heli"
elseif VehicleType == 16 then
ReturnedType = "plane"
elseif VehicleType == 14 then
ReturnedType = "boat"
elseif VehicleType == 11 then
ReturnedType = "trailer"
elseif VehicleType == 21 then
ReturnedType = "train"
elseif VehicleType == 13 or VehicleType == 8 then
ReturnedType = "bike"
end
if Model == `submersible` or Model == `submersible2` then
ReturnedType = "submarine"
end
else
ReturnedType = false
if Model == `submersible` or Model == `submersible2` then
return TriggerServerEvent("esx:ReturnVehicleType", "submarine", Request)
end
TriggerServerEvent("esx:ReturnVehicleType", ReturnedType, Request)
local VehicleType = GetVehicleClassFromName(Model)
local types = {
[8] = "bike",
[11] = "trailer",
[13] = "bike",
[14] = "boat",
[15] = "heli",
[16] = "plane",
[21] = "train",
}
TriggerServerEvent("esx:ReturnVehicleType", types[VehicleType] or "automobile", Request)
end)
local DoNotUse = {
+6
View File
@@ -108,6 +108,12 @@ Locales['en'] = {
['command_giveammo_noweapon_found'] = '%s does not have that weapon',
['command_giveammo_weapon'] = 'Weapon name',
['command_giveammo_ammo'] = 'Ammo Quantity',
['tpm_nowaypoint'] = 'No Waypoint Set.',
['tpm_success'] = 'Successfully Teleported',
['noclip_message'] = 'Noclip has been %s',
['enabled'] = '~g~enabled~s~',
['disabled'] = '~r~disabled~s~',
-- Locale settings
['locale_digit_grouping_symbol'] = ',',
+9 -3
View File
@@ -105,9 +105,15 @@ Locales["hu"] = {
["commanderror_invalidcommand"] = "Érvénytelen parancs - /%s",
["commanderror_invalidplayerid"] = "Megadott játékos nem online.",
["commandgeneric_playerid"] = "Játékos Szerver Id",
['command_giveammo_noweapon_found'] = '%s does not have that weapon',
['command_giveammo_weapon'] = 'Weapon name',
['command_giveammo_ammo'] = 'Ammo Quantity',
['command_giveammo_noweapon_found'] = 'Nincs ilyen fegyvered: %s',
['command_giveammo_weapon'] = 'Fegyver név',
['command_giveammo_ammo'] = 'Lőszer mennyiség',
['tpm_nowaypoint'] = 'Nincs kijelölve pozíció!',
['tpm_success'] = 'Sikeres teleportálás',
['noclip_message'] = 'Noclip %s',
['enabled'] = '~g~engedélyezve~s~',
['disabled'] = '~r~letiltva~s~',
-- Locale settings
["locale_digit_grouping_symbol"] = ",",
+4 -4
View File
@@ -1,15 +1,15 @@
Locales["hu"] = {
["parking_blip_name"] = 'Garázs',
["Impound_blip_name"] = 'Lefoglaltak',
["access_parking"] = 'Nyomd meg az [E] gombot a parkoló eléréshez.',
["access_parking"] = 'Nyomd meg az [E] gombot a parkoló megtekintéséhez.',
["access_Impound"] = 'Nyomd meg az [E] gombot a lefoglaltak megtekintéséhez.',
["park_veh"] = 'Nyomd meg az [E] gombot a jármű parkolásához.',
["not_owning_veh"] = 'Ez a jármű nem a te tulajdonod!',
['veh_released'] = 'Jármű sikeresen kivéve.',
['veh_released'] = 'Sikeresen kivetted a járművet.',
['veh_Impound_released'] = 'Jármű sikeresen kiváltva a legfolalásból.',
['veh_stored'] = 'Jármű sikeresen tárolva',
['veh_impounded'] = 'Lefoglalt jármű',
['no_veh_parking'] = 'Nincsenek itt tárolt járművek-',
['veh_impounded'] = 'Lefoglalt jármű megjelölve a térképen',
['no_veh_parking'] = 'Nincsenek itt tárolt járművek.',
['no_veh_impounded'] = 'Nincs lefoglalt jármű.',
['no_veh_Impound'] = 'nincs lefoglalt járműved.',
['veh_model'] = 'Model',
-1
View File
@@ -38,7 +38,6 @@ AddEventHandler('esx_garage:setImpound', function(Impound, vehicleProps)
})
xPlayer.showNotification(TranslateCap('veh_impounded'))
end)