mirror of
https://github.com/artegoser/pimi-launcher-core.git
synced 2024-11-22 12:16:21 +03:00
HOTFIX 1.14.4. Native and library rule check
This commit is contained in:
parent
77532e2166
commit
72f6104763
2 changed files with 22 additions and 1 deletions
|
@ -172,6 +172,24 @@ class Handler {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
parseRule(lib) {
|
||||||
|
if(lib.rules) {
|
||||||
|
if (lib.rules.length > 1) {
|
||||||
|
if (lib.rules[0].action === 'allow' &&
|
||||||
|
lib.rules[1].action === 'disallow' &&
|
||||||
|
lib.rules[1].os.name === 'osx') {
|
||||||
|
return this.getOS() === 'osx';
|
||||||
|
} else {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (lib.rules[0].action === 'allow' && lib.rules[0].os) return this.getOS() !== 'osx';
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
getNatives() {
|
getNatives() {
|
||||||
return new Promise(async(resolve) => {
|
return new Promise(async(resolve) => {
|
||||||
const nativeDirectory = this.options.overrides.natives || path.join(this.options.root, 'natives', this.version.id);
|
const nativeDirectory = this.options.overrides.natives || path.join(this.options.root, 'natives', this.version.id);
|
||||||
|
@ -181,6 +199,8 @@ class Handler {
|
||||||
|
|
||||||
await Promise.all(this.version.libraries.map(async (lib) => {
|
await Promise.all(this.version.libraries.map(async (lib) => {
|
||||||
if (!lib.downloads.classifiers) return;
|
if (!lib.downloads.classifiers) return;
|
||||||
|
if (this.parseRule(lib)) return;
|
||||||
|
|
||||||
const native = this.getOS() === 'osx'
|
const native = this.getOS() === 'osx'
|
||||||
? lib.downloads.classifiers['natives-osx'] || lib.downloads.classifiers['natives-macos']
|
? lib.downloads.classifiers['natives-osx'] || lib.downloads.classifiers['natives-macos']
|
||||||
: lib.downloads.classifiers[`natives-${this.getOS()}`];
|
: lib.downloads.classifiers[`natives-${this.getOS()}`];
|
||||||
|
@ -283,6 +303,7 @@ class Handler {
|
||||||
|
|
||||||
await Promise.all(this.version.libraries.map(async (_lib) => {
|
await Promise.all(this.version.libraries.map(async (_lib) => {
|
||||||
if(!_lib.downloads.artifact) return;
|
if(!_lib.downloads.artifact) return;
|
||||||
|
if(this.parseRule(_lib)) return;
|
||||||
|
|
||||||
const libraryPath = _lib.downloads.artifact.path;
|
const libraryPath = _lib.downloads.artifact.path;
|
||||||
const libraryUrl = _lib.downloads.artifact.url;
|
const libraryUrl = _lib.downloads.artifact.url;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "minecraft-launcher-core",
|
"name": "minecraft-launcher-core",
|
||||||
"version": "3.8.1",
|
"version": "3.9.0",
|
||||||
"description": "Lightweight module that downloads and runs Minecraft using javascript / NodeJS",
|
"description": "Lightweight module that downloads and runs Minecraft using javascript / NodeJS",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
|
Loading…
Add table
Reference in a new issue