Skip to content

Commit

Permalink
Merge pull request #80 from Swellington-Soares/main
Browse files Browse the repository at this point in the history
added pt-br language and other changes;
  • Loading branch information
GhzGarage authored Jan 12, 2024
2 parents 74dadb9 + f2c2a2a commit 04ed5ad
Show file tree
Hide file tree
Showing 3 changed files with 78 additions and 26 deletions.
31 changes: 13 additions & 18 deletions client/client.lua
Original file line number Diff line number Diff line change
Expand Up @@ -19,17 +19,12 @@ RegisterNetEvent('qb-weathersync:client:EnableSync', function()
end)

RegisterNetEvent('qb-weathersync:client:DisableSync', function()
disable = true
CreateThread(function()
while disable do
SetRainLevel(0.0)
SetWeatherTypePersist('CLEAR')
SetWeatherTypeNow('CLEAR')
SetWeatherTypeNowPersist('CLEAR')
NetworkOverrideClockTime(18, 0, 0)
Wait(5000)
end
end)
disable = true
SetRainLevel(0.0)
SetWeatherTypePersist('CLEAR')
SetWeatherTypeNow('CLEAR')
SetWeatherTypeNowPersist('CLEAR')
NetworkOverrideClockTime(18, 0, 0)
end)

RegisterNetEvent('qb-weathersync:client:SyncWeather', function(NewWeather, newblackout)
Expand Down Expand Up @@ -82,26 +77,26 @@ end)
CreateThread(function()
local hour
local minute = 0
local second = 0 --Add seconds for shadow smoothness
local second = 0 --Add seconds for shadow smoothness
while true do
if not disable then
Wait(0)
local newBaseTime = baseTime
if GetGameTimer() - 22 > timer then --Generate seconds in client side to avoid communiation
second = second + 1 --Minutes are sent from the server every 2 seconds to keep sync
if GetGameTimer() - 22 > timer then --Generate seconds in client side to avoid communiation
second = second + 1 --Minutes are sent from the server every 2 seconds to keep sync
timer = GetGameTimer()
end
if freezeTime then
timeOffset = timeOffset + baseTime - newBaseTime
second = 0
end
baseTime = newBaseTime
hour = math.floor(((baseTime+timeOffset)/60)%24)
if minute ~= math.floor((baseTime+timeOffset)%60) then --Reset seconds to 0 when new minute
minute = math.floor((baseTime+timeOffset)%60)
hour = math.floor(((baseTime + timeOffset) / 60) % 24)
if minute ~= math.floor((baseTime + timeOffset) % 60) then --Reset seconds to 0 when new minute
minute = math.floor((baseTime + timeOffset) % 60)
second = 0
end
NetworkOverrideClockTime(hour, minute, second) --Send hour included seconds to network clock time
NetworkOverrideClockTime(hour, minute, second) --Send hour included seconds to network clock time
else
Wait(1000)
end
Expand Down
63 changes: 63 additions & 0 deletions locales/pt-br.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
local Translations = {
weather = {
now_frozen = 'O clima está congelado agora.',
now_unfrozen = 'O clima não está mais congelado.',
invalid_syntax = 'Sintaxe inválida, a sintaxe correta é: /weather <tipo de clima> ',
invalid_syntaxc = 'Sintaxe inválida, use /weather <tipoDeClima> em vez disso!',
updated = 'O clima foi atualizado.',
invalid = 'Tipo de clima inválido, os tipos de clima válidos são: \nEXTRASUNNY CLEAR NEUTRAL SMOG FOGGY OVERCAST CLOUDS CLEARING RAIN THUNDER SNOW BLIZZARD SNOWLIGHT XMAS HALLOWEEN ',
invalidc = 'Tipo de clima inválido, os tipos de clima válidos são: \nEXTRASUNNY CLEAR NEUTRAL SMOG FOGGY OVERCAST CLOUDS CLEARING RAIN THUNDER SNOW BLIZZARD SNOWLIGHT XMAS HALLOWEEN ',
willchangeto = 'O clima mudará para: %{value}.',
accessdenied = 'Acesso negado para o comando /weather.',
},
dynamic_weather = {
disabled = 'As mudanças dinâmicas de clima agora estão desabilitadas.',
enabled = 'As mudanças dinâmicas de clima agora estão habilitadas.',
},
time = {
frozenc = 'O tempo está congelado agora.',
unfrozenc = 'O tempo não está mais congelado.',
now_frozen = 'O tempo está congelado agora.',
now_unfrozen = 'O tempo não está mais congelado.',
morning = 'O horário foi definido para a manhã.',
noon = 'O horário foi definido para o meio-dia.',
evening = 'O horário foi definido para a tarde.',
night = 'O horário foi definido para a noite.',
change = 'O horário mudou para %{value}:%{value2}.',
changec = 'O horário foi alterado para: %{value}!',
invalid = 'Sintaxe inválida, a sintaxe correta é: time <hora> <minuto> !',
invalidc = 'Sintaxe inválida. Use /time <hora> <minuto> em vez disso!',
access = 'Acesso negado para o comando /time.',
},
blackout = {
enabled = 'O modo de blecaute agora está habilitado.',
enabledc = 'O modo de blecaute agora está habilitado.',
disabled = 'O modo de blecaute agora está desabilitado.',
disabledc = 'O modo de blecaute agora está desabilitado.',
},
help = {
weathercommand = 'Mude o clima.',
weathertype = 'tipoDeClima',
availableweather = 'Tipos disponíveis: extrasunny, clear, neutral, smog, foggy, overcast, clouds, clearing, rain, thunder, snow, blizzard, snowlight, xmas e halloween',
timecommand = 'Mude o horário.',
timehname = 'horas',
timemname = 'minutos',
timeh = 'Um número entre 0 - 23',
timem = 'Um número entre 0 - 59',
freezecommand = 'Congele / descongele o tempo.',
freezeweathercommand = 'Ative / desative as mudanças dinâmicas de clima.',
morningcommand = 'Defina o horário para 09:00',
nooncommand = 'Defina o horário para 12:00',
eveningcommand = 'Defina o horário para 18:00',
nightcommand = 'Defina o horário para 23:00',
blackoutcommand = 'Ative o modo de blecaute.',
},
}

if GetConvar('qb_locale', 'en') == 'pt-br' then
Lang = Locale:new({
phrases = Translations,
warnOnMissing = true,
fallbackLang = Lang,
})
end
10 changes: 2 additions & 8 deletions server/server.lua
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,14 @@ local newWeatherTimer = Config.NewWeatherTimer
--- @param src string | number - source to check
--- @return int - source
local function getSource(src)
if src == '' then
return 0
end
return src
return src == '' and 0 or src
end

--- Does source have permissions to run admin commands
--- @param src number - Source to check
--- @return boolean - has permission
local function isAllowedToChange(src)
if src == 0 or QBCore.Functions.HasPermission(src, "admin") or IsPlayerAceAllowed(src, 'command') then
return true
end
return false
return src == 0 or QBCore.Functions.HasPermission(src, "admin") or IsPlayerAceAllowed(src, 'command')
end

--- Sets time offset based on minutes provided
Expand Down

0 comments on commit 04ed5ad

Please sign in to comment.