From dcc051b67e44ae98121fb4d58f0787641f1bf834 Mon Sep 17 00:00:00 2001 From: Vortrex <3858226+VortrexFTW@users.noreply.github.com> Date: Tue, 12 Apr 2022 09:00:29 -0500 Subject: [PATCH] Use locale strings --- scripts/server/business.js | 2 +- scripts/server/config.js | 8 ++++---- scripts/server/economy.js | 2 +- scripts/server/house.js | 2 +- scripts/server/locale.js | 15 +++++++++++++++ scripts/server/messaging.js | 11 +++++++---- scripts/server/radio.js | 2 +- scripts/server/staff.js | 3 ++- 8 files changed, 32 insertions(+), 13 deletions(-) diff --git a/scripts/server/business.js b/scripts/server/business.js index cbbcde36..343c09c1 100644 --- a/scripts/server/business.js +++ b/scripts/server/business.js @@ -2149,7 +2149,7 @@ function reloadAllBusinessesCommand(command, params, client) { setAllBusinessIndexes(); cacheAllBusinessItems(); - announceAdminAction(`All businesses have been reloaded by an admin!`); + announceAdminAction(`AllBusinessesReloaded`); } // =========================================================================== diff --git a/scripts/server/config.js b/scripts/server/config.js index 5f171a97..2c8b4065 100644 --- a/scripts/server/config.js +++ b/scripts/server/config.js @@ -376,7 +376,7 @@ function setWeatherCommand(command, params, client) { getServerConfig().needsSaved = true; - announceAdminAction("ServerTimeSet", getPlayerName(client), getGameConfig().weatherNames[getServerGame()][toInteger(weatherId)]); + announceAdminAction("ServerWeatherSet", getPlayerName(client), getGameConfig().weatherNames[getServerGame()][toInteger(weatherId)]); updateServerRules(); return true; } @@ -467,7 +467,7 @@ function toggleServerLogoCommand(command, params, client) { updatePlayerShowLogoState(null, getServerConfig().useLogo); - announceAdminAction(`${getPlayerName(client)}{MAINCOLOUR}${getBoolRedGreenInlineColour(doesServerHaveServerLogoEnabled())}${toUpperCase(getOnOffFromBool(getServerConfig().useLogo))}`); + //announceAdminAction(`${getPlayerName(client)}{MAINCOLOUR}${getBoolRedGreenInlineColour(doesServerHaveServerLogoEnabled())}${toUpperCase(getOnOffFromBool(getServerConfig().useLogo))}`); updateServerRules(); return true; } @@ -629,7 +629,7 @@ function toggleServerUseRealWorldTimeCommand(command, params, client) { getServerConfig().needsSaved = true; - announceAdminAction(`${getPlayerName(client)}{MAINCOLOUR} turned real-world time ${getServerConfig().useRealTime} for this server (GMT ${addPositiveNegativeSymbol(getServerConfig().realTimeZone)})`); + //announceAdminAction(`${getPlayerName(client)}{MAINCOLOUR} turned real-world time ${getServerConfig().useRealTime} for this server (GMT ${addPositiveNegativeSymbol(getServerConfig().realTimeZone)})`); updateServerGameTime(); updateServerRules(); return true; @@ -655,7 +655,7 @@ function setServerRealWorldTimeZoneCommand(command, params, client) { getServerConfig().realTimeZone = toInteger(params); getServerConfig().needsSaved = true; - announceAdminAction(`${getPlayerName(client)} {MAINCOLOUR}set the time zone for in-game's real-world time to GMT ${addPositiveNegativeSymbol(getServerConfig().realTimeZone)}`); + //announceAdminAction(`${getPlayerName(client)} {MAINCOLOUR}set the time zone for in-game's real-world time to GMT ${addPositiveNegativeSymbol(getServerConfig().realTimeZone)}`); updateServerGameTime(); updateServerRules(); return true; diff --git a/scripts/server/economy.js b/scripts/server/economy.js index f8da2a1b..67ae6e2a 100644 --- a/scripts/server/economy.js +++ b/scripts/server/economy.js @@ -132,7 +132,7 @@ function setPayDayBonusMultiplier(command, params, client) { getGlobalConfig().economy.grossIncomeMultiplier = newMultiplier; - announceAdminAction(`${client.name} set payday bonus to ${newMultiplier*100}%`); + announceAdminAction(`PaydayBonusSet`, `{adminRed}${client.name}{MAINCOLOUR}`, `{ALTCOLOUR}${newMultiplier*100}%{MAINCOLOUR}`); } // =========================================================================== diff --git a/scripts/server/house.js b/scripts/server/house.js index 7677232b..ca155d04 100644 --- a/scripts/server/house.js +++ b/scripts/server/house.js @@ -1297,7 +1297,7 @@ function reloadAllHousesCommand(command, params, client) { createAllHousePickups(); createAllHouseBlips(); - announceAdminAction(`All houses have been reloaded by an admin!`); + announceAdminAction(`HousesReloaded`); } // =========================================================================== diff --git a/scripts/server/locale.js b/scripts/server/locale.js index 026e46da..1634fcaa 100644 --- a/scripts/server/locale.js +++ b/scripts/server/locale.js @@ -43,6 +43,21 @@ function getLocaleString(client, stringName, ...args) { // =========================================================================== +function getLanguageLocaleString(localeId, stringName, ...args) { + let tempString = getRawLocaleString(stringName, localeId); + if(tempString == "") { + submitBugReport(client, `(AUTOMATED REPORT) Locale string "${stringName}" is missing for "${getPlayerLocaleName(client)}"`); + } + + for(let i = 1; i <= args.length; i++) { + tempString = tempString.replace(`{${i}}`, args[i-1]); + } + + return tempString; +} + +// =========================================================================== + function getGroupedLocaleString(client, stringName, index, ...args) { let tempString = getRawGroupedLocaleString(stringName, getPlayerData(client).locale, index); diff --git a/scripts/server/messaging.js b/scripts/server/messaging.js index 394b33c7..e92d955e 100644 --- a/scripts/server/messaging.js +++ b/scripts/server/messaging.js @@ -14,11 +14,14 @@ function initMessagingScript() { // =========================================================================== -function announceAdminAction(messageText) { - messagePlayerNormal(null, `⚠️ ${messageText}`, getColourByName("orange")); - if(getServerConfig().discordEnabled) { - messageDiscord(`:warning: ${messageText}`); +function announceAdminAction(localeString, ...args) { + let clients = getClients(); + for(let i in clients) { + let messageText = getLocaleString.apply(null, [clients[i], localeString, args]); + messagePlayerNormal(clients[i], `⚠️ ${messageText}`, getColourByName("orange")); } + + messageDiscordEventChannel(getLanguageLocaleString.apply(null, [getGlobalConfig().locale.defaultLanguageId, localeString, args])); } // =========================================================================== diff --git a/scripts/server/radio.js b/scripts/server/radio.js index fe0e78d6..30390046 100644 --- a/scripts/server/radio.js +++ b/scripts/server/radio.js @@ -258,7 +258,7 @@ function reloadAllRadioStationsCommand(command, params, client) { getServerData().radioStations = loadRadioStationsFromDatabase(); setRadioStationIndexes(); - announceAdminAction(`All radio stations have been reloaded by an admin!`); + announceAdminAction(`AllRadioStationsReloaded`); } // =========================================================================== diff --git a/scripts/server/staff.js b/scripts/server/staff.js index 9a44c26c..b865c8ee 100644 --- a/scripts/server/staff.js +++ b/scripts/server/staff.js @@ -43,7 +43,8 @@ function kickClientCommand(command, params, client) { } } - announceAdminAction(`${getPlayerName(targetClient)} has been kicked from the server.`); + //getPlayerData(targetClient).customDisconnectReason = reason; + announceAdminAction(`PlayerKicked`, getPlayerName(targetClient)); targetClient.disconnect(); }