714daace18
The player count on the landing page is now functional. If the server cannot be reached, the label and value will change to SERVER and OFFLINE, respectively. This behavior can be modified.
29 lines
972 B
JavaScript
29 lines
972 B
JavaScript
const {AssetGuard} = require('./assetguard.js')
|
|
const ConfigManager = require('./configmanager.js')
|
|
const os = require('os')
|
|
const path = require('path')
|
|
const rimraf = require('rimraf')
|
|
|
|
console.log('Preloading')
|
|
|
|
// Load ConfigManager
|
|
ConfigManager.load()
|
|
|
|
// Ensure Distribution is downloaded and cached.
|
|
AssetGuard.retrieveDistributionDataSync(ConfigManager.getGameDirectory(), false)
|
|
|
|
// Resolve the selected server if its value has yet to be set.
|
|
if(ConfigManager.getSelectedServer() == null){
|
|
console.log('Determining default selected server..')
|
|
ConfigManager.setSelectedServer(AssetGuard.resolveSelectedServer(ConfigManager.getGameDirectory()).id)
|
|
ConfigManager.save()
|
|
}
|
|
|
|
// Clean up temp dir incase previous launches ended unexpectedly.
|
|
rimraf(path.join(os.tmpdir(), ConfigManager.getTempNativeFolder()), (err) => {
|
|
if(err){
|
|
console.warn('Error while cleaning temp dir', err)
|
|
} else {
|
|
console.log('Cleaned temp dir.')
|
|
}
|
|
}) |