Age | Commit message (Collapse) | Author |
|
This means instead of showing the invididual mods inside a package, we
simply show 1 mod/package, we then use the name, description, version
and so forth from the `manifest.json` inside the package folder. Further
we now also support a local `icon.png` file, instead of relying on
remotely stored icons and trying to match names against each other.
|
|
I may or may not have missed some properties or something somewhere,
perhaps we'll see if something ends up broken in the future...
|
|
|
|
They're pretty simple to use, and automatically make themselves fit on
screen, on top of automatically disappearing and appearing of course.
I've used them a few places now, and not sure where else they can be
used, there are of course localization strings that need, well,
localization, and I'll create a PR for this on a later date.
|
|
This should've already been a thing, and was a thing for when the game
was currently launching, but this functionality seems to have been
broken at some point.
|
|
win.alert() now has a Promise return value, which'll allow you to wait
until an alert has been closed before continuing code execution.
win.confirm() was also added it's the same as win.alert() except it runs
confirm() in the renderer instead of alert(), and has a return boolean
in the Promise resolve callback. This boolean being whether the user
confirmed the action or not.
|
|
On restart, if the json file was broken supposedly would try to repair but it wouldn't work, it would keep repairing but failing.
This should fix it by deleting the json file and creating a new one at the start with the correct settings (hopefully)
|
|
|
|
If not enough elements are inside a grid to fill it out entirely it'll
attempt to put spacing in between the items to make them vertically
centered. This is now removed.
|
|
|
|
|
|
"cache_dir" being wherever your OS puts it's cache, it's the same place
mods.js uses to download mods.
This prevents cluttering up the gamepath with temporary files.
|
|
|
|
Notably, winLog() and winAlert() are now win.log() and win.alert()
inside modules/window.js.
updateViper(), updateNorthstar and handleNorthstarUpdating() are now
update.viper(), update.northstar() and update.northstar_autoupdate(),
inside modules/update.js
isGameRunning() and isOriginRunning() are now is_running.origin() and
is_running.game() inside modules/is_running.js, along with a
.titanfall() and .northstar() for more specificity. Not used anywhere
right now, but may in the future be used.
setpath() and gamepathExists() are now gamepath.set() and
gamepath.exists() inside modules/gamepath.js
killOrigin() are now kill.origin() inside modules/kill.js
setlang() is now just inlined into the only event where it's used.
|
|
They're now identical!
|
|
|
|
|
|
|
|
I also made mods with updates be placed in the top of the modlist.
|
|
When a red switch is placed besides a red button that says "Remove", it
makes it seem far more destructive to click that switch, even if it's
not, and a blue color doesn't fit in very well either (perhaps we need
more colors). And so because of all that the modlist switches are now
orange, and we can easily add more colors.
The switch colors overall are also far more vibrant now, as it looks far
better that way.
|
|
|
|
The new modlist now uses the same toggles found in the settings popup,
only here they're used to disable/enable mods. On top of this I also
fixed the "Toggle All" button not working. Forgot to change some stuff,
breaking it... oops...
|
|
We now just use a click event listener, and check through what's at the
click location, and toggle classes as needed.
|
|
|
|
Previously some outdated packages would just say "Re-Install" and not
"Update", now that's fixed, along with making the logic easier for use
in the mod list.
|
|
The current design for the installed mods is not exactly the best. And
it has been due for a redesign for quite a while, I'm finally starting
work on this.
|
|
|
|
|
|
|
|
This doesn't entirely uphold support, as it doesn't use the author file
for anything, however it does write it as intended.
|
|
When JavaScript errors occur outside of the renderer, they'll no longer
display a big and confusingly detailed error stack, now they'll simply
be shown a toast about the fact that an error happened.
The user can then click this to get more details, but still without it
being as invasive and obtuse as before.
|
|
If a mod has multiple mod folders inside it, however all with the same
name, they'll be merged together, this now fixes that, by adding
"(dupe)" to the end of it, along with displaying an error, however it
will install successfully.
This also happens to add some duplicate toast protection, however this
should be reworked, but I am not bothered to deal with it right now, and
I instead will be putting this on future me.
|
|
Some functions have been renamed:
update() -> updateNorthstar()
updatevp() -> updateViper()
Overall these are far better function names...
|
|
|
|
|
|
|
|
When release notes (either Northstar or Viper) fetching fails,
if cache contains data, we display it even if it's outdated; if
cache is empty, we display an error message in place of release
notes.
|
|
When opening the preview for a mod it may show a cookie alert, this is
now auto-hidden, along with an alert recommending users to use the
Thunderstore Mod Manager, or an alternative, since Viper is an
alternative, this is only an alert that can confuse users. And it is
therefore removed.
|
|
The settings button now turns like a cog when hovered, and there's a
slight animation when you hover a settings switch.
|
|
Only on the titles, putting them only on the options or on both the
title and options would be far too much, just the title is perfect.
|
|
Mostly syntax, but also a few fixes with how the settings system work,
and also a change in localization strings.
|
|
|
|
feat: Master server status
|
|
Quite a lot of them aren't in the same syntax/style, and it's quite bad
to look at, this should fix them all without causing issues.
|
|
I know, commas aren't needed, however, going in and out of using commas
and not using them also looks bad, so generally I try to always use
them, with exceptions.
|
|
While it's unlikely we'll ever get down to 1 player, it's best to be on
the safe side :p
|
|
|
|
This doesn't fully implement everything as the master server is down
whilst making this commit, so I can't fully implement it.
|
|
Previously packages were filtered based on whether
Browser.filters.get().filtered included any of the categories, now
however it only checks if one of 4 filters is selected, Skins, Mods,
Client-side and Server-side, anything beyond that like "Language: EN" is
ignored and unless it doesn't have any of the other filters selected
it'll go unfiltered.
Previously when selecting every filter you'd still only get 100'ish
packages at best, now you get the full 150 that there currently is on
Thunderstore, except for r2modman and Northstar itself.
|
|
If the only results when searching are elements that are filtered then
it just infinitely shows loading instead showing "No results..."
|