Created
March 29, 2020 13:39
-
-
Save DragonDev1906/33f78b9502f845f6e2e69fc297e46723 to your computer and use it in GitHub Desktop.
Find a block in an extracted jar file (blockstate and all referenced model files) Requires the AssetLoader
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import os | |
| import json | |
| from overviewer_core.asset_loader import AssetLoader | |
| extracted_jar_path = "C:/Users/Jens/Documents/projects/Minecraft-Overviewer-working-dir/mc_jar_file" | |
| blockstates_path_format = "assets/minecraft/blockstates/{0}.json" | |
| model_path_format = "assets/minecraft/models/{0}.json" | |
| def print_data(name, data): | |
| print('#' * 50) | |
| print('{0}.json'.format(name).center(50)) | |
| print('#'*50) | |
| print(json.dumps(data, indent=4)) | |
| if __name__ == "__main__": | |
| print("Which block do you want?") | |
| block_name = input() | |
| asset_loader = AssetLoader(extracted_jar_path) | |
| blockstate_data = asset_loader.load_blockstates(block_name) | |
| print_data(block_name, blockstate_data) | |
| if not "variants" in blockstate_data: | |
| print("Can't load models for multipart blocks, yet!") | |
| sys.exit() | |
| model_list = set([ | |
| variant["model"] | |
| for nbt_condition, variant in blockstate_data["variants"].items() | |
| if "model" in variant | |
| ]) | |
| for model in model_list: | |
| model_data = asset_loader.load_and_combine_model(model) | |
| print_data(model, model_data) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment