aboutsummaryrefslogtreecommitdiff
path: root/codegen/migrate.py
diff options
context:
space:
mode:
Diffstat (limited to 'codegen/migrate.py')
-rwxr-xr-xcodegen/migrate.py26
1 files changed, 24 insertions, 2 deletions
diff --git a/codegen/migrate.py b/codegen/migrate.py
index 50bdb354..9df3ee0d 100755
--- a/codegen/migrate.py
+++ b/codegen/migrate.py
@@ -1,8 +1,11 @@
from lib.code.packet import fix_state
from lib.utils import PacketIdentifier, group_packets
+import lib.code.language
+import lib.code.registry
import lib.code.version
import lib.code.blocks
import lib.code.packet
+import lib.code.shapes
import lib.code.utils
import lib.download
import lib.extract
@@ -101,7 +104,6 @@ for packet in added_or_changed_packets:
lib.code.version.set_protocol_version(
new_burger_data[0]['version']['protocol'])
-lib.code.version.set_version_id(new_version_id)
print('Updated protocol!')
@@ -110,13 +112,33 @@ old_ordered_blocks = lib.extract.get_ordered_blocks_burger(old_version_id)
new_ordered_blocks = lib.extract.get_ordered_blocks_burger(new_version_id)
if old_ordered_blocks != new_ordered_blocks:
print('Blocks changed, updating...')
+
block_states_burger = lib.extract.get_block_states_burger(new_version_id)
block_states_report = lib.extract.get_block_states_report(new_version_id)
+ shape_datas = lib.extract.get_pixlyzer_data(
+ new_version_id, 'shapes')
+ pixlyzer_block_datas = lib.extract.get_pixlyzer_data(
+ new_version_id, 'blocks')
+
lib.code.blocks.generate_blocks(
- block_states_burger, block_states_report, old_ordered_blocks, new_mappings)
+ block_states_burger, block_states_report, new_ordered_blocks, new_mappings)
+ lib.code.shapes.generate_block_shapes(
+ pixlyzer_block_datas, shape_datas['shapes'], shape_datas['aabbs'], block_states_report, block_states_burger, new_mappings)
+
+print('Getting en_us.json...')
+language = lib.extract.get_en_us_lang(new_version_id)
+lib.code.language.write_language(language)
+
+print('Generating registries...')
+registries = lib.extract.get_registries_report(new_version_id)
+lib.code.registry.generate_registries(registries)
+
+print('Finishing touches, setting version in README and formatting code...')
+lib.code.version.set_version_id(new_version_id)
lib.code.utils.fmt()
print('Done!')
+print('Make sure to `cargo check` and look for the generated `TODO`s to make sure everything is correct!')