Mise a jours initial

This commit is contained in:
FullGreenDev 2020-11-28 23:44:01 +01:00
parent c93d4922a6
commit ecddd1d660
10 changed files with 174 additions and 169 deletions

View File

@ -1,7 +1,8 @@
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" http-equiv="Content-Security-Policy" content="script-src 'self' 'sha256-In6B8teKZQll5heMl9bS7CESTbGvuAt3VVV86BUQBDk='"/>
<title>Helios Launcher</title>
<meta charset="utf-8" http-equiv="Content-Security-Policy" content="script-src 'self' 'sha256-In6B8teKZQll5heMl9bS7CESTbGvuAt3VVV86BUQBDk='" />
<title>SkyGames Launcher</title>
<script src="./assets/js/scripts/uicore.js"></script>
<script src="./assets/js/scripts/uibinder.js"></script>
<link type="text/css" rel="stylesheet" href="./assets/css/launcher.css">
@ -13,6 +14,7 @@
background-size: cover;
-webkit-user-select: none;
}
#main {
display: none;
height: calc(100% - 22px);
@ -21,33 +23,36 @@
position: absolute;
z-index: 10;
}
#main[overlay] {
filter: blur(3px) contrast(0.9) brightness(1.0);
}
</style>
</head>
<body bkid="<%=bkid%>">
<%- include('frame') %>
<div id="main">
<%- include('welcome') %>
<%- include('login') %>
<%- include('settings') %>
<%- include('landing') %>
</div>
<%- include('overlay') %>
<div id="loadingContainer">
<div id="loadingContent">
<div id="loadSpinnerContainer">
<img id="loadCenterImage" src="assets/images/LoadingSeal.png">
<img id="loadSpinnerImage" class="rotating" src="assets/images/LoadingText.png">
</div>
<div id="main">
<%- include('welcome') %>
<%- include('login') %>
<%- include('settings') %>
<%- include('landing') %>
</div>
</div>
<script>
// Load language
for(let key of Object.keys(Lang.query('html'))){
document.getElementById(key).innerHTML = Lang.query(`html.${key}`)
}
</script>
<%- include('overlay') %>
<div id="loadingContainer">
<div id="loadingContent">
<div id="loadSpinnerContainer">
<img id="loadCenterImage" src="assets/images/LoadingSeal.png">
<img id="loadSpinnerImage" class="rotating" src="assets/images/LoadingText.png">
</div>
</div>
</div>
<script>
// Load language
for (let key of Object.keys(Lang.query('html'))) {
document.getElementById(key).innerHTML = Lang.query(`html.${key}`)
}
</script>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 244 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 202 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

@ -1,12 +1,12 @@
const fs = require('fs-extra')
const os = require('os')
const fs = require('fs-extra')
const os = require('os')
const path = require('path')
const logger = require('./loggerutil')('%c[ConfigManager]', 'color: #a02d2a; font-weight: bold')
const sysRoot = process.env.APPDATA || (process.platform == 'darwin' ? process.env.HOME + '/Library/Application Support' : process.env.HOME)
// TODO change
const dataPath = path.join(sysRoot, '.helioslauncher')
// TODO change
const dataPath = path.join(sysRoot, '.SkyGameslauncher')
// Forked processes do not have access to electron, so we have this workaround.
const launcherDir = process.env.CONFIG_DIRECT_PATH || require('electron').remote.app.getPath('userData')
@ -16,7 +16,7 @@ const launcherDir = process.env.CONFIG_DIRECT_PATH || require('electron').remote
*
* @returns {string} The absolute path of the launcher directory.
*/
exports.getLauncherDirectory = function(){
exports.getLauncherDirectory = function() {
return launcherDir
}
@ -26,7 +26,7 @@ exports.getLauncherDirectory = function(){
*
* @returns {string} The absolute path of the launcher's data directory.
*/
exports.getDataDirectory = function(def = false){
exports.getDataDirectory = function(def = false) {
return !def ? config.settings.launcher.dataDirectory : DEFAULT_CONFIG.settings.launcher.dataDirectory
}
@ -35,7 +35,7 @@ exports.getDataDirectory = function(def = false){
*
* @param {string} dataDirectory The new data directory.
*/
exports.setDataDirectory = function(dataDirectory){
exports.setDataDirectory = function(dataDirectory) {
config.settings.launcher.dataDirectory = dataDirectory
}
@ -43,23 +43,23 @@ const configPath = path.join(exports.getLauncherDirectory(), 'config.json')
const configPathLEGACY = path.join(dataPath, 'config.json')
const firstLaunch = !fs.existsSync(configPath) && !fs.existsSync(configPathLEGACY)
exports.getAbsoluteMinRAM = function(){
exports.getAbsoluteMinRAM = function() {
const mem = os.totalmem()
return mem >= 6000000000 ? 3 : 2
}
exports.getAbsoluteMaxRAM = function(){
exports.getAbsoluteMaxRAM = function() {
const mem = os.totalmem()
const gT16 = mem-16000000000
return Math.floor((mem-1000000000-(gT16 > 0 ? (Number.parseInt(gT16/8) + 16000000000/4) : mem/4))/1000000000)
const gT16 = mem - 16000000000
return Math.floor((mem - 1000000000 - (gT16 > 0 ? (Number.parseInt(gT16 / 8) + 16000000000 / 4) : mem / 4)) / 1000000000)
}
function resolveMaxRAM(){
function resolveMaxRAM() {
const mem = os.totalmem()
return mem >= 8000000000 ? '4G' : (mem >= 6000000000 ? '3G' : '2G')
}
function resolveMinRAM(){
function resolveMinRAM() {
return resolveMaxRAM()
}
@ -113,7 +113,7 @@ let config = null
/**
* Save the current configuration to a file.
*/
exports.save = function(){
exports.save = function() {
fs.writeFileSync(configPath, JSON.stringify(config, null, 4), 'UTF-8')
}
@ -123,13 +123,13 @@ exports.save = function(){
* be generated. Note that "resolved" values default to null and will
* need to be externally assigned.
*/
exports.load = function(){
exports.load = function() {
let doLoad = true
if(!fs.existsSync(configPath)){
if (!fs.existsSync(configPath)) {
// Create all parent directories.
fs.ensureDirSync(path.join(configPath, '..'))
if(fs.existsSync(configPathLEGACY)){
if (fs.existsSync(configPathLEGACY)) {
fs.moveSync(configPathLEGACY, configPath)
} else {
doLoad = false
@ -137,12 +137,12 @@ exports.load = function(){
exports.save()
}
}
if(doLoad){
if (doLoad) {
let doValidate = false
try {
config = JSON.parse(fs.readFileSync(configPath, 'UTF-8'))
doValidate = true
} catch (err){
} catch (err) {
logger.error(err)
logger.log('Configuration file contains malformed JSON or is corrupt.')
logger.log('Generating a new configuration file.')
@ -150,7 +150,7 @@ exports.load = function(){
config = DEFAULT_CONFIG
exports.save()
}
if(doValidate){
if (doValidate) {
config = validateKeySet(DEFAULT_CONFIG, config)
exports.save()
}
@ -161,7 +161,7 @@ exports.load = function(){
/**
* @returns {boolean} Whether or not the manager has been loaded.
*/
exports.isLoaded = function(){
exports.isLoaded = function() {
return config != null
}
@ -173,16 +173,16 @@ exports.isLoaded = function(){
* @param {Object} destObj The destination object.
* @returns {Object} A validated destination object.
*/
function validateKeySet(srcObj, destObj){
if(srcObj == null){
function validateKeySet(srcObj, destObj) {
if (srcObj == null) {
srcObj = {}
}
const validationBlacklist = ['authenticationDatabase']
const keys = Object.keys(srcObj)
for(let i=0; i<keys.length; i++){
if(typeof destObj[keys[i]] === 'undefined'){
for (let i = 0; i < keys.length; i++) {
if (typeof destObj[keys[i]] === 'undefined') {
destObj[keys[i]] = srcObj[keys[i]]
} else if(typeof srcObj[keys[i]] === 'object' && srcObj[keys[i]] != null && !(srcObj[keys[i]] instanceof Array) && validationBlacklist.indexOf(keys[i]) === -1){
} else if (typeof srcObj[keys[i]] === 'object' && srcObj[keys[i]] != null && !(srcObj[keys[i]] instanceof Array) && validationBlacklist.indexOf(keys[i]) === -1) {
destObj[keys[i]] = validateKeySet(srcObj[keys[i]], destObj[keys[i]])
}
}
@ -195,7 +195,7 @@ function validateKeySet(srcObj, destObj){
*
* @returns {boolean} True if this is the first launch, otherwise false.
*/
exports.isFirstLaunch = function(){
exports.isFirstLaunch = function() {
return firstLaunch
}
@ -205,7 +205,7 @@ exports.isFirstLaunch = function(){
*
* @returns {string} The name of the folder.
*/
exports.getTempNativeFolder = function(){
exports.getTempNativeFolder = function() {
return 'WCNatives'
}
@ -217,7 +217,7 @@ exports.getTempNativeFolder = function(){
*
* @returns {Object} The news cache object.
*/
exports.getNewsCache = function(){
exports.getNewsCache = function() {
return config.newsCache
}
@ -226,7 +226,7 @@ exports.getNewsCache = function(){
*
* @param {Object} newsCache The new news cache object.
*/
exports.setNewsCache = function(newsCache){
exports.setNewsCache = function(newsCache) {
config.newsCache = newsCache
}
@ -235,7 +235,7 @@ exports.setNewsCache = function(newsCache){
*
* @param {boolean} dismissed Whether or not the news has been dismissed (checked).
*/
exports.setNewsCacheDismissed = function(dismissed){
exports.setNewsCacheDismissed = function(dismissed) {
config.newsCache.dismissed = dismissed
}
@ -245,7 +245,7 @@ exports.setNewsCacheDismissed = function(dismissed){
*
* @returns {string} The launcher's common directory.
*/
exports.getCommonDirectory = function(){
exports.getCommonDirectory = function() {
return path.join(exports.getDataDirectory(), 'common')
}
@ -255,7 +255,7 @@ exports.getCommonDirectory = function(){
*
* @returns {string} The launcher's instance directory.
*/
exports.getInstanceDirectory = function(){
exports.getInstanceDirectory = function() {
return path.join(exports.getDataDirectory(), 'instances')
}
@ -265,7 +265,7 @@ exports.getInstanceDirectory = function(){
*
* @returns {string} The launcher's Client Token.
*/
exports.getClientToken = function(){
exports.getClientToken = function() {
return config.clientToken
}
@ -274,7 +274,7 @@ exports.getClientToken = function(){
*
* @param {string} clientToken The launcher's new Client Token.
*/
exports.setClientToken = function(clientToken){
exports.setClientToken = function(clientToken) {
config.clientToken = clientToken
}
@ -284,7 +284,7 @@ exports.setClientToken = function(clientToken){
* @param {boolean} def Optional. If true, the default value will be returned.
* @returns {string} The ID of the selected serverpack.
*/
exports.getSelectedServer = function(def = false){
exports.getSelectedServer = function(def = false) {
return !def ? config.selectedServer : DEFAULT_CONFIG.clientToken
}
@ -293,7 +293,7 @@ exports.getSelectedServer = function(def = false){
*
* @param {string} serverID The ID of the new selected serverpack.
*/
exports.setSelectedServer = function(serverID){
exports.setSelectedServer = function(serverID) {
config.selectedServer = serverID
}
@ -302,7 +302,7 @@ exports.setSelectedServer = function(serverID){
*
* @returns {Array.<Object>} An array of each stored authenticated account.
*/
exports.getAuthAccounts = function(){
exports.getAuthAccounts = function() {
return config.authenticationDatabase
}
@ -313,7 +313,7 @@ exports.getAuthAccounts = function(){
* @param {string} uuid The uuid of the authenticated account.
* @returns {Object} The authenticated account with the given uuid.
*/
exports.getAuthAccount = function(uuid){
exports.getAuthAccount = function(uuid) {
return config.authenticationDatabase[uuid]
}
@ -325,7 +325,7 @@ exports.getAuthAccount = function(uuid){
*
* @returns {Object} The authenticated account object created by this action.
*/
exports.updateAuthAccount = function(uuid, accessToken){
exports.updateAuthAccount = function(uuid, accessToken) {
config.authenticationDatabase[uuid].accessToken = accessToken
return config.authenticationDatabase[uuid]
}
@ -340,7 +340,7 @@ exports.updateAuthAccount = function(uuid, accessToken){
*
* @returns {Object} The authenticated account object created by this action.
*/
exports.addAuthAccount = function(uuid, accessToken, username, displayName){
exports.addAuthAccount = function(uuid, accessToken, username, displayName) {
config.selectedAccount = uuid
config.authenticationDatabase[uuid] = {
accessToken,
@ -360,12 +360,12 @@ exports.addAuthAccount = function(uuid, accessToken, username, displayName){
*
* @returns {boolean} True if the account was removed, false if it never existed.
*/
exports.removeAuthAccount = function(uuid){
if(config.authenticationDatabase[uuid] != null){
exports.removeAuthAccount = function(uuid) {
if (config.authenticationDatabase[uuid] != null) {
delete config.authenticationDatabase[uuid]
if(config.selectedAccount === uuid){
if (config.selectedAccount === uuid) {
const keys = Object.keys(config.authenticationDatabase)
if(keys.length > 0){
if (keys.length > 0) {
config.selectedAccount = keys[0]
} else {
config.selectedAccount = null
@ -382,7 +382,7 @@ exports.removeAuthAccount = function(uuid){
*
* @returns {Object} The selected authenticated account.
*/
exports.getSelectedAccount = function(){
exports.getSelectedAccount = function() {
return config.authenticationDatabase[config.selectedAccount]
}
@ -394,9 +394,9 @@ exports.getSelectedAccount = function(){
*
* @returns {Object} The selected authenticated account.
*/
exports.setSelectedAccount = function(uuid){
exports.setSelectedAccount = function(uuid) {
const authAcc = config.authenticationDatabase[uuid]
if(authAcc != null) {
if (authAcc != null) {
config.selectedAccount = uuid
}
return authAcc
@ -407,7 +407,7 @@ exports.setSelectedAccount = function(uuid){
*
* @returns {Array.<Object>} An array of each stored mod configuration.
*/
exports.getModConfigurations = function(){
exports.getModConfigurations = function() {
return config.modConfigurations
}
@ -416,7 +416,7 @@ exports.getModConfigurations = function(){
*
* @param {Array.<Object>} configurations An array of mod configurations.
*/
exports.setModConfigurations = function(configurations){
exports.setModConfigurations = function(configurations) {
config.modConfigurations = configurations
}
@ -426,10 +426,10 @@ exports.setModConfigurations = function(configurations){
* @param {string} serverid The id of the server.
* @returns {Object} The mod configuration for the given server.
*/
exports.getModConfiguration = function(serverid){
exports.getModConfiguration = function(serverid) {
const cfgs = config.modConfigurations
for(let i=0; i<cfgs.length; i++){
if(cfgs[i].id === serverid){
for (let i = 0; i < cfgs.length; i++) {
if (cfgs[i].id === serverid) {
return cfgs[i]
}
}
@ -442,10 +442,10 @@ exports.getModConfiguration = function(serverid){
* @param {string} serverid The id of the server for the given mod configuration.
* @param {Object} configuration The mod configuration for the given server.
*/
exports.setModConfiguration = function(serverid, configuration){
exports.setModConfiguration = function(serverid, configuration) {
const cfgs = config.modConfigurations
for(let i=0; i<cfgs.length; i++){
if(cfgs[i].id === serverid){
for (let i = 0; i < cfgs.length; i++) {
if (cfgs[i].id === serverid) {
cfgs[i] = configuration
return
}
@ -465,7 +465,7 @@ exports.setModConfiguration = function(serverid, configuration){
* @param {boolean} def Optional. If true, the default value will be returned.
* @returns {string} The minimum amount of memory for JVM initialization.
*/
exports.getMinRAM = function(def = false){
exports.getMinRAM = function(def = false) {
return !def ? config.settings.java.minRAM : DEFAULT_CONFIG.settings.java.minRAM
}
@ -476,7 +476,7 @@ exports.getMinRAM = function(def = false){
*
* @param {string} minRAM The new minimum amount of memory for JVM initialization.
*/
exports.setMinRAM = function(minRAM){
exports.setMinRAM = function(minRAM) {
config.settings.java.minRAM = minRAM
}
@ -488,7 +488,7 @@ exports.setMinRAM = function(minRAM){
* @param {boolean} def Optional. If true, the default value will be returned.
* @returns {string} The maximum amount of memory for JVM initialization.
*/
exports.getMaxRAM = function(def = false){
exports.getMaxRAM = function(def = false) {
return !def ? config.settings.java.maxRAM : resolveMaxRAM()
}
@ -499,7 +499,7 @@ exports.getMaxRAM = function(def = false){
*
* @param {string} maxRAM The new maximum amount of memory for JVM initialization.
*/
exports.setMaxRAM = function(maxRAM){
exports.setMaxRAM = function(maxRAM) {
config.settings.java.maxRAM = maxRAM
}
@ -510,7 +510,7 @@ exports.setMaxRAM = function(maxRAM){
*
* @returns {string} The path of the Java Executable.
*/
exports.getJavaExecutable = function(){
exports.getJavaExecutable = function() {
return config.settings.java.executable
}
@ -519,7 +519,7 @@ exports.getJavaExecutable = function(){
*
* @param {string} executable The new path of the Java Executable.
*/
exports.setJavaExecutable = function(executable){
exports.setJavaExecutable = function(executable) {
config.settings.java.executable = executable
}
@ -531,7 +531,7 @@ exports.setJavaExecutable = function(executable){
* @param {boolean} def Optional. If true, the default value will be returned.
* @returns {Array.<string>} An array of the additional arguments for JVM initialization.
*/
exports.getJVMOptions = function(def = false){
exports.getJVMOptions = function(def = false) {
return !def ? config.settings.java.jvmOptions : DEFAULT_CONFIG.settings.java.jvmOptions
}
@ -543,7 +543,7 @@ exports.getJVMOptions = function(def = false){
* @param {Array.<string>} jvmOptions An array of the new additional arguments for JVM
* initialization.
*/
exports.setJVMOptions = function(jvmOptions){
exports.setJVMOptions = function(jvmOptions) {
config.settings.java.jvmOptions = jvmOptions
}
@ -555,7 +555,7 @@ exports.setJVMOptions = function(jvmOptions){
* @param {boolean} def Optional. If true, the default value will be returned.
* @returns {number} The width of the game window.
*/
exports.getGameWidth = function(def = false){
exports.getGameWidth = function(def = false) {
return !def ? config.settings.game.resWidth : DEFAULT_CONFIG.settings.game.resWidth
}
@ -564,7 +564,7 @@ exports.getGameWidth = function(def = false){
*
* @param {number} resWidth The new width of the game window.
*/
exports.setGameWidth = function(resWidth){
exports.setGameWidth = function(resWidth) {
config.settings.game.resWidth = Number.parseInt(resWidth)
}
@ -574,7 +574,7 @@ exports.setGameWidth = function(resWidth){
* @param {number} resWidth The width value to validate.
* @returns {boolean} Whether or not the value is valid.
*/
exports.validateGameWidth = function(resWidth){
exports.validateGameWidth = function(resWidth) {
const nVal = Number.parseInt(resWidth)
return Number.isInteger(nVal) && nVal >= 0
}
@ -585,7 +585,7 @@ exports.validateGameWidth = function(resWidth){
* @param {boolean} def Optional. If true, the default value will be returned.
* @returns {number} The height of the game window.
*/
exports.getGameHeight = function(def = false){
exports.getGameHeight = function(def = false) {
return !def ? config.settings.game.resHeight : DEFAULT_CONFIG.settings.game.resHeight
}
@ -594,7 +594,7 @@ exports.getGameHeight = function(def = false){
*
* @param {number} resHeight The new height of the game window.
*/
exports.setGameHeight = function(resHeight){
exports.setGameHeight = function(resHeight) {
config.settings.game.resHeight = Number.parseInt(resHeight)
}
@ -604,7 +604,7 @@ exports.setGameHeight = function(resHeight){
* @param {number} resHeight The height value to validate.
* @returns {boolean} Whether or not the value is valid.
*/
exports.validateGameHeight = function(resHeight){
exports.validateGameHeight = function(resHeight) {
const nVal = Number.parseInt(resHeight)
return Number.isInteger(nVal) && nVal >= 0
}
@ -615,7 +615,7 @@ exports.validateGameHeight = function(resHeight){
* @param {boolean} def Optional. If true, the default value will be returned.
* @returns {boolean} Whether or not the game is set to launch in fullscreen mode.
*/
exports.getFullscreen = function(def = false){
exports.getFullscreen = function(def = false) {
return !def ? config.settings.game.fullscreen : DEFAULT_CONFIG.settings.game.fullscreen
}
@ -624,7 +624,7 @@ exports.getFullscreen = function(def = false){
*
* @param {boolean} fullscreen Whether or not the game should launch in fullscreen mode.
*/
exports.setFullscreen = function(fullscreen){
exports.setFullscreen = function(fullscreen) {
config.settings.game.fullscreen = fullscreen
}
@ -634,7 +634,7 @@ exports.setFullscreen = function(fullscreen){
* @param {boolean} def Optional. If true, the default value will be returned.
* @returns {boolean} Whether or not the game should auto connect to servers.
*/
exports.getAutoConnect = function(def = false){
exports.getAutoConnect = function(def = false) {
return !def ? config.settings.game.autoConnect : DEFAULT_CONFIG.settings.game.autoConnect
}
@ -643,7 +643,7 @@ exports.getAutoConnect = function(def = false){
*
* @param {boolean} autoConnect Whether or not the game should auto connect to servers.
*/
exports.setAutoConnect = function(autoConnect){
exports.setAutoConnect = function(autoConnect) {
config.settings.game.autoConnect = autoConnect
}
@ -653,7 +653,7 @@ exports.setAutoConnect = function(autoConnect){
* @param {boolean} def Optional. If true, the default value will be returned.
* @returns {boolean} Whether or not the game will launch as a detached process.
*/
exports.getLaunchDetached = function(def = false){
exports.getLaunchDetached = function(def = false) {
return !def ? config.settings.game.launchDetached : DEFAULT_CONFIG.settings.game.launchDetached
}
@ -662,7 +662,7 @@ exports.getLaunchDetached = function(def = false){
*
* @param {boolean} launchDetached Whether or not the game should launch as a detached process.
*/
exports.setLaunchDetached = function(launchDetached){
exports.setLaunchDetached = function(launchDetached) {
config.settings.game.launchDetached = launchDetached
}
@ -674,7 +674,7 @@ exports.setLaunchDetached = function(launchDetached){
* @param {boolean} def Optional. If true, the default value will be returned.
* @returns {boolean} Whether or not the launcher should download prerelease versions.
*/
exports.getAllowPrerelease = function(def = false){
exports.getAllowPrerelease = function(def = false) {
return !def ? config.settings.launcher.allowPrerelease : DEFAULT_CONFIG.settings.launcher.allowPrerelease
}
@ -683,6 +683,6 @@ exports.getAllowPrerelease = function(def = false){
*
* @param {boolean} launchDetached Whether or not the launcher should download prerelease versions.
*/
exports.setAllowPrerelease = function(allowPrerelease){
exports.setAllowPrerelease = function(allowPrerelease) {
config.settings.launcher.allowPrerelease = allowPrerelease
}

View File

@ -10,24 +10,24 @@
<button class="frameButtonDarwin fRb" id="frameButtonDarwin_restoredown" tabIndex="-1"></button>
</div>
</div>
<% } else{ %>
<div id="frameContentWin">
<div id="frameTitleDock">
<span id="frameTitleText">Helios Launcher</span>
</div>
<div id="frameButtonDockWin">
<button class="frameButton fMb" id="frameButton_minimize" tabIndex="-1">
<% } else{ %>
<div id="frameContentWin">
<div id="frameTitleDock">
<span id="frameTitleText">SkyGames Launcher</span>
</div>
<div id="frameButtonDockWin">
<button class="frameButton fMb" id="frameButton_minimize" tabIndex="-1">
<svg name="TitleBarMinimize" width="10" height="10" viewBox="0 0 12 12"><rect stroke="#ffffff" fill="#ffffff" width="10" height="1" x="1" y="6"></rect></svg>
</button>
<button class="frameButton fRb" id="frameButton_restoredown" tabIndex="-1">
<button class="frameButton fRb" id="frameButton_restoredown" tabIndex="-1">
<svg name="TitleBarMaximize" width="10" height="10" viewBox="0 0 12 12"><rect width="9" height="9" x="1.5" y="1.5" fill="none" stroke="#ffffff" stroke-width="1.4px"></rect></svg>
</button>
<button class="frameButton fCb" id="frameButton_close" tabIndex="-1">
<button class="frameButton fCb" id="frameButton_close" tabIndex="-1">
<svg name="TitleBarClose" width="10" height="10" viewBox="0 0 12 12"><polygon stroke="#ffffff" fill="#ffffff" fill-rule="evenodd" points="11 1.576 6.583 6 11 10.424 10.424 11 6 6.583 1.576 11 1 10.424 5.417 6 1 1.576 1.576 1 6 5.417 10.424 1"></polygon></svg>
</button>
</div>
</div>
</div>
<% } %>
<div class="frameResizableVert frameDragPadder"></div>
<% } %>
<div class="frameResizableVert frameDragPadder"></div>
</div>
</div>

View File

@ -4,14 +4,14 @@
<div class="cloudBottom"></div>
</div>-->
<div id="welcomeContent">
<img id="welcomeImageSeal" src="assets/images/SealCircle.png"/>
<span id="welcomeHeader">WELCOME TO WESTEROSCRAFT</span>
<span id="welcomeDescription">Our mission is to recreate the universe imagined by author George RR Martin in his fantasy series, A Song of Ice and Fire. Through the collaborative effort of thousands of community members, we have sought to create Westeros as accurately and precisely as possible within Minecraft. The world we are creating is yours to explore. Journey from Dorne to Castle Black, and if you arent afraid, beyond the Wall itself, but best not delay. As the words of House Stark ominously warn: Winter is Coming.</span>
<img id="welcomeImageSeal" src="assets/images/SealCircle.png" />
<span id="welcomeHeader">Bienvenue sur SkyGames Launcher</span>
<span id="welcomeDescription">Serveur Minecraft Moddée</span>
<br>
<span id="welcomeDescCTA">You are just a few clicks away from Westeros.</span>
<span id="welcomeDescCTA">Vous n'êtes qu'à quelques clics de SkyGames</span>
<button id="welcomeButton">
<div id="welcomeButtonContent">
CONTINUE
CONTINUER
<svg id="welcomeSVG" viewBox="0 0 24.87 13.97">
<defs>
<style>.arrowLine{fill:none;stroke:#FFF;stroke-width:2px;transition: 0.25s ease;}</style>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 KiB

After

Width:  |  Height:  |  Size: 12 KiB

4
package-lock.json generated
View File

@ -1,6 +1,6 @@
{
"name": "helioslauncher",
"version": "1.8.0",
"name": "skygameslauncher",
"version": "1.1.2",
"lockfileVersion": 1,
"requires": true,
"dependencies": {

View File

@ -1,52 +1,52 @@
{
"name": "helioslauncher",
"version": "1.8.0",
"productName": "Helios Launcher",
"description": "Modded Minecraft Launcher",
"author": "Daniel Scalzi (https://github.com/dscalzi/)",
"license": "UNLICENSED",
"homepage": "https://github.com/dscalzi/HeliosLauncher",
"bugs": {
"url": "https://github.com/dscalzi/HeliosLauncher/issues"
},
"private": true,
"main": "index.js",
"scripts": {
"start": "electron .",
"cilinux": "node build.js WINDOWS && node build.js LINUX",
"cidarwin": "node build.js MAC",
"dist": "cross-env ELECTRON_BUILDER_ALLOW_UNRESOLVED_DEPENDENCIES=true node build.js",
"dist:win": "npm run dist -- WINDOWS",
"dist:mac": "npm run dist -- MAC",
"dist:linux": "npm run dist -- LINUX",
"lint": "eslint --config .eslintrc.json ."
},
"engines": {
"node": "12.x.x"
},
"dependencies": {
"adm-zip": "^0.4.16",
"async": "^3.2.0",
"discord-rpc": "^3.1.4",
"ejs": "^3.1.5",
"ejs-electron": "^2.1.1",
"electron-updater": "^4.3.5",
"fs-extra": "^9.0.1",
"github-syntax-dark": "^0.5.0",
"jquery": "^3.5.1",
"request": "^2.88.2",
"semver": "^7.3.2",
"tar-fs": "^2.1.1",
"winreg": "^1.2.4"
},
"devDependencies": {
"cross-env": "^7.0.2",
"electron": "^11.0.0",
"electron-builder": "^22.9.1",
"eslint": "^7.13.0"
},
"repository": {
"type": "git",
"url": "git+https://github.com/dscalzi/HeliosLauncher.git"
}
"name": "skygameslauncher",
"version": "1.1.2",
"productName": "SkyGames Launcher",
"description": "SkyGames Launcher",
"author": "FullGreen (https://github.com/dscalzi/)",
"license": "UNLICENSED",
"homepage": "https://github.com/FullGreenDev/SkyGamesLauncher",
"bugs": {
"url": "https://github.com/FullGreenDev/SkyGamesLauncher/issues"
},
"private": true,
"main": "index.js",
"scripts": {
"start": "electron .",
"cilinux": "node build.js WINDOWS && node build.js LINUX",
"cidarwin": "node build.js MAC",
"dist": "cross-env ELECTRON_BUILDER_ALLOW_UNRESOLVED_DEPENDENCIES=true node build.js",
"dist:win": "npm run dist -- WINDOWS",
"dist:mac": "npm run dist -- MAC",
"dist:linux": "npm run dist -- LINUX",
"lint": "eslint --config .eslintrc.json ."
},
"engines": {
"node": "12.x.x"
},
"dependencies": {
"adm-zip": "^0.4.16",
"async": "^3.2.0",
"discord-rpc": "^3.1.4",
"ejs": "^3.1.5",
"ejs-electron": "^2.1.1",
"electron-updater": "^4.3.5",
"fs-extra": "^9.0.1",
"github-syntax-dark": "^0.5.0",
"jquery": "^3.5.1",
"request": "^2.88.2",
"semver": "^7.3.2",
"tar-fs": "^2.1.1",
"winreg": "^1.2.4"
},
"devDependencies": {
"cross-env": "^7.0.2",
"electron": "^11.0.0",
"electron-builder": "^22.9.1",
"eslint": "^7.13.0"
},
"repository": {
"type": "git",
"url": "git+https://github.com/FullGreenDev/SkyGamesLauncher.git"
}
}