diff options
| author | Trial97 <alexandru.tripon97@gmail.com> | 2024-01-26 23:49:00 +0200 |
|---|---|---|
| committer | Trial97 <alexandru.tripon97@gmail.com> | 2024-01-26 23:49:00 +0200 |
| commit | e3bfcec871eedcefeb3269b4fb5328cb5abc0911 (patch) | |
| tree | 46e9ad54fe06b3de291d42b5f2a5358177631192 /generateMojang.py | |
| parent | 276f578d3a7811b575a383f491b434ddba964b22 (diff) | |
| download | Project-Tick-e3bfcec871eedcefeb3269b4fb5328cb5abc0911.tar.gz Project-Tick-e3bfcec871eedcefeb3269b4fb5328cb5abc0911.zip | |
made use of newly game arguments
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
Diffstat (limited to 'generateMojang.py')
| -rwxr-xr-x | generateMojang.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/generateMojang.py b/generateMojang.py index b483bc2c39..59a71c75f2 100755 --- a/generateMojang.py +++ b/generateMojang.py @@ -198,6 +198,21 @@ def adapt_new_style_arguments(arguments): pprint(arg) return " ".join(foo) +def adapt_new_style_arguments_to_traits(arguments): + foo = [] + # we ignore the jvm arguments entirely. + # grab the object, log the errors + for arg in arguments.game: + if not isinstance(arg, str): + try: + for rule in arg["rules"]: + for k,v in rule["features"].items(): + if rule["action"] == "allow" and v: + foo.append(f"feature:{k}") + except: + print("something did not go as planed") + pprint(arg) + return foo def is_macos_only(rules: Optional[MojangRules]): allows_osx = False @@ -486,6 +501,9 @@ def main(): # process 1.13 arguments into previous version if not mojang_version.minecraft_arguments and mojang_version.arguments: v.minecraft_arguments = adapt_new_style_arguments(mojang_version.arguments) + if not v.additional_traits: + v.additional_traits = [] + v.additional_traits.extend(adapt_new_style_arguments_to_traits(mojang_version.arguments)) out_filename = os.path.join( LAUNCHER_DIR, MINECRAFT_COMPONENT, f"{v.version}.json" ) |
