// =========================================================================== // Vortrex's Roleplay Resource // https://github.com/VortrexFTW/gtac_roleplay // =========================================================================== // FILE: locale.js // DESC: Provides locale structures, functions and usage // TYPE: Server (JavaScript) // =========================================================================== function initLocaleScript() { logToConsole(LOG_INFO, "[VRR.Locale]: Initializing locale script ..."); getServerData().localeStrings = loadAllLocaleStrings(); logToConsole(LOG_INFO, "[VRR.Locale]: Locale script initialized!"); } // =========================================================================== function getLocaleString(client, stringName, ...args) { let tempString = getRawLocaleString(stringName, getPlayerLocaleName(client)); tempString = replaceColoursInMessage(tempString); for(let i = 1; i <= args.length; i++) { tempString = tempString.replace(`{${i}}`, args[i-1]); } return tempString; } // =========================================================================== function getRawLocaleString(stringName, localeName) { return getLocaleStrings()[localeName][stringName]; } // =========================================================================== function getPlayerLocaleName(client) { if(client == null) { return getLocaleNameFromParams(`English`); } return "english"; //return getPlayerData(client).accountData.locale; } // =========================================================================== function loadAllLocaleStrings() { let tempLocaleStrings = {}; let locales = getGlobalConfig().locales; for(let i in locales) { let localeData = locales[i]; let localeFile = JSON.parse(loadTextFile(`locale/${localeData[1]}.json`)); tempLocaleStrings[localeData[1]] = localeFile; } return tempLocaleStrings; } // =========================================================================== function getLocaleStrings() { return getServerData().localeStrings; } // ===========================================================================