Commit Graph

84 Commits

Author SHA1 Message Date
Daniel Scalzi
810e81521c
Added eslint. To lint, npm run lint.
Linted the entire project. Using different rules for the script files
as there are a lot of undefined variables just because of the way the
DOM's global scope works.

Mostly just code cleanup, however the linter did catch a minor bug with
a settings regex. That has been corrected.
2018-07-22 13:31:15 -04:00
Daniel Scalzi
7dcce68455
Updated Distribution Index spec and impl.
Added distromanager.js to represent distro elements.
Moved all distro refresh code to distromanager.js.
Overhauled assetexec.js.
Overhauled handling of assetexec.js output in landing.js.
Overhauled events emitted by assetguard.js.
Improved doenload processing in assetguard.
Updated discord-rpc to v3.0.0.
Replaced westeroscraft.json with distribution.json.
Use npm in travis for windows + linux.
Remove file extension from imports.
Added liteloader + macromod + shaders to distribution.json.
2018-07-22 11:40:15 -04:00
Daniel Scalzi
6759b143c4
Show installing progress bar during extractions. 2018-07-02 02:24:13 -04:00
Daniel Scalzi
3131002d02
Use full body skin render for the avatar image.
There's room for improvement here, but it works for now.
2018-07-02 02:01:28 -04:00
Daniel Scalzi
85331a7088
Added keyboard controls to the News UI.
On the landing view, the up arrow will open the News UI.
On the News UI, the left and right arrow keys will switch articles.

Thanks to aaronholtomcook/ElectronLauncher (26659f8c38)
2018-06-30 15:16:31 -04:00
Daniel Scalzi
c0714ecbc6
Added functionality to avatar overlay.
Overlay changed from div to button.
Clicking on the overlay will bring you directly to the settings account tab.
Modified overlay background color.
2018-06-21 12:38:21 -04:00
Daniel Scalzi
2d0c4c76eb
Enhanced News UI.
Added a drop shadow so that the news no longer scrolls into nothing.
Tweaked several styles to make the UI look a lot better.
2018-06-20 09:12:44 -04:00
Daniel Scalzi
109c24bc79
Added option to change the Java exec to the settings UI. 2018-06-14 03:49:55 -04:00
Daniel Scalzi
08eb04775e
Added indication for when there is new news. 2018-06-04 23:08:03 -04:00
Daniel Scalzi
0cc861f614
Overhauling file system structure.
Common files such as assets, libraries, and mods have been externalized into a 'common' folder. Each server now has its own instance folder to allow saving per version files. This resolves issues with resourcepacks and mod configurations being overriden, and still preserves our optimizations in storing libraries and mods maven style.
2018-06-04 00:17:20 -04:00
Daniel Scalzi
91c842dd40
Added UI and implementation for the account settings tab.
Features:
* Add a new account.
* Switch accounts.
* Log out of an account.

Also added a cancel button to the login UI which is only shown when a user is adding an account. In that case, the operation should be and is cancellable.
2018-05-30 22:22:17 -04:00
Daniel Scalzi
2dcbb45bdb
Further progress on settings UI.
Added a tooltip to the settings button on the landing UI.
Settings button now opens to the (incomplete) settings UI.
Added navigation bar to the settings UI.
Implemented tabbing between settings tabs.
More to come.
2018-05-30 16:00:07 -04:00
Daniel Scalzi
a67dac23cf
Fixes related to offline startup.
Fixed incorrect function name for local distro index loading.
Fixed mojang tooltip not showing statuses when offline.
Added timeout of 2500ms to news loading, remote distro index retrieval, and mojang status loading.
Updates async to fix lodash vulnerability.
2018-05-22 08:41:22 -04:00
Daniel Scalzi
ba916aa953
v0.0.1-alpha.5
Added tooltip UI which shows the status of each Mojang service.
Updated dependencies.
2018-05-17 03:11:44 -04:00
Daniel Scalzi
f4abbef58c
Increasing version, various small fixes.
Fixed launcher.js not checking the correct return value when verifying the configured Java executable.
Removed debug logging from configmanager.js.
Updated dependencies.
2018-05-15 06:07:28 -04:00
Daniel Scalzi
71cbd109c4
Various fixes.
Fixed issue where news button could not be tabbed to when news UI is active.
Fixed incorrect java version sorting (now behaves as intended).
2018-05-15 02:30:26 -04:00
Daniel Scalzi
f0a66e7a02
Various fixes for the news UI.
Made the layout for the status container more comprehensive.
Added a spacer to the bottom of news article content.
Disabled tabbing between the landing and news containers.
2018-05-10 05:48:55 -04:00
Daniel Scalzi
f1a98f2d45
Added mojang account validation UI.
Other minor fixes included. Bumped version from dev to alpha. Testing to begin soon.
2018-05-09 22:23:37 -04:00
Daniel Scalzi
15a83a7736
Attempting to make references to the distribution index more streamlined. WIP 2018-05-08 20:10:46 -04:00
Daniel Scalzi
f161e196be
Improving application startup flow.
Major improvements to distribution index loading.
Implemented new transitional UI for startup.
If **no** distribution index is loaded on startup, completion of startup will be prevented and the user will be shown a message displaying the issue.
Launch errors are now shown as overlays.
Many more minor fixes and enhancements.
2018-05-08 06:34:16 -04:00
Daniel Scalzi
cd4f7918c8
Pipe output from forked processes back to parent.
Also cleaned up the code a bit. Switched to use lambda declarations in promises and renamed 'fulfill' to 'resolve', as it should be,
2018-05-07 18:15:59 -04:00
Daniel Scalzi
0c1ebd0ce0
Distribution data is now pulled from our servers. 2018-05-07 01:34:57 -04:00
Daniel Scalzi
40de1e3cd3
Added News UI.
Added News UI and implemented functionality.
Removed westeroscraft.xml as we don't need to cache it.
Updated westeroscraft.json.
Updated Electron to v2.0.0
2018-05-06 21:45:20 -04:00
Daniel Scalzi
39fd7e19ef
Make menu button slide up (experimental). Disable tabindex on overlay. 2018-04-29 18:39:57 -04:00
Daniel Scalzi
4106b2b069
Many fixes and adjustments to the upper right landing UI.
The user_text span now displays the currently selected account.
2018-04-29 18:05:59 -04:00
Daniel Scalzi
ea758aee1f
Various optimizations related to library extraction.
Updated PackXZExtract to v1.0.1.
If no files are queued for extraction, the step is skipped.
The UI now shows some indication that the extraction is in progress.
2018-04-28 23:34:23 -04:00
Daniel Scalzi
d08cfbf248
Change library extraction to be queue based to ensure it completes. 2018-04-28 20:52:13 -04:00
Daniel Scalzi
009a1b58af
Added basic functionality to server selection UI.
The server list is now dynamically generated based on the servers listed in the distribution index. Also, moved to event.key for key bindings as event.keyCode is deprecated.
2018-04-27 00:04:09 -04:00
Daniel Scalzi
5fe43ac8e9
Added basic functionality to server selection UI.
Basic selection and updating of the selected server has been added. There are a few subtle mechanics which need to be added still, such as keybind shortcuts (enter to submit, etc). In addition, functionality still needs to be added to generate the list of servers from the manifest file.

Fixed a minor issue with the login view.
Updated play button styles.
Updated dependencies.
2018-04-26 18:41:26 -04:00
Daniel Scalzi
4b708f59fe
Minor modifications to menu animation. 2018-04-26 04:00:51 -04:00
Daniel Scalzi
22f5eabe49
Experimenting with the menu slide animation. 2018-04-26 03:49:45 -04:00
Daniel Scalzi
6e55442b25
Server selection view can now be opened from the landing view.
The temporary span which displayed the selected server has been changed to a button. Clicking this button will open the server selection view. The server selection view is still pending full implementation.
2018-04-26 02:39:47 -04:00
Daniel Scalzi
2f66d44824
Further organization of the browser scripts.
Moved server selection styles to launcher.css, as they are nearly finished.
Moved overlay convenience functions to overlay.js.
Moved launch area (landing.ejs) convenience functions to landing.js.
Various cleanups and documentation also added.
2018-04-25 20:11:10 -04:00
Daniel Scalzi
1b38629084
Organizing UI scripts.
Moved landing.ejs specific scripts to a dedicated file. General cleanup for other script files. Need to examine the remaining code in actionbinder.js to determine the most logical place for it.
2018-04-25 17:40:46 -04:00