From 3ac090a7a07fb39fcf7aac65eeed475d06f1b4e3 Mon Sep 17 00:00:00 2001 From: InrcedibleHolg Date: Sun, 12 Jul 2020 11:23:43 +0200 Subject: [PATCH] nether biomes --- overviewer_core/src/mc_id.h | 12 ++++++++ overviewer_core/src/overviewer.h | 2 +- overviewer_core/textures.py | 52 +++++++++++++++++++++++++++++++- overviewer_core/world.py | 26 +++++++++++++++- 4 files changed, 89 insertions(+), 3 deletions(-) diff --git a/overviewer_core/src/mc_id.h b/overviewer_core/src/mc_id.h index 3e825cc..aabc748 100644 --- a/overviewer_core/src/mc_id.h +++ b/overviewer_core/src/mc_id.h @@ -267,6 +267,18 @@ enum mc_block_id { block_soul_campfire = 1003, block_blackstone = 1004, block_netherite_block = 1005, + block_warped_nylium = 1006, + block_crimson_nylium = 1007, + block_warped_wart_block = 1010, + block_shroomlight = 1011, + block_twisting_vines = 1012, + block_twisting_vines_plant = 1013, + block_weeping_vines = 1014, + block_weeping_vines_plant = 1015, + block_warped_fungus = 1016, + block_crimson_fungus = 1017, + block_warped_roots = 1018, + block_crimson_roots = 1019, // adding a gap in the numbering of walls to keep them all // in one numbering block starting at 1792 diff --git a/overviewer_core/src/overviewer.h b/overviewer_core/src/overviewer.h index a7da8d7..ef55ab6 100644 --- a/overviewer_core/src/overviewer.h +++ b/overviewer_core/src/overviewer.h @@ -31,7 +31,7 @@ // increment this value if you've made a change to the c extension // and want to force users to rebuild -#define OVERVIEWER_EXTENSION_VERSION 87 +#define OVERVIEWER_EXTENSION_VERSION 88 #include #include diff --git a/overviewer_core/textures.py b/overviewer_core/textures.py index d0d7f27..aee4bb4 100644 --- a/overviewer_core/textures.py +++ b/overviewer_core/textures.py @@ -1077,7 +1077,8 @@ block(blockid=15, top_image="assets/minecraft/textures/block/iron_ore.png") # coal ore block(blockid=16, top_image="assets/minecraft/textures/block/coal_ore.png") -@material(blockid=[17,162,11306,11307,11308,11309,11310,11311], data=list(range(12)), solid=True) +@material(blockid=[17, 162, 11306, 11307, 11308, 11309, 11310, 11311, 1008, 1009], + data=list(range(12)), solid=True) def wood(self, blockid, data): # extract orientation and wood type frorm data bits wood_type = data & 3 @@ -1172,6 +1173,32 @@ def wood(self, blockid, data): if wood_type == 3: # jungle wood top = self.load_image_texture("assets/minecraft/textures/block/stripped_jungle_log.png") side = top + if blockid == 1008: # nether logs aka stem + if wood_type == 0: # warped_stem + top = self.load_image_texture("assets/minecraft/textures/block/warped_stem_top.png") + side = self.load_image_texture("assets/minecraft/textures/block/warped_stem.png") + if wood_type == 1: # stripped_warped_stem + top = self.load_image_texture("assets/minecraft/textures/block/warped_stem_top.png") + side = self.load_image_texture("assets/minecraft/textures/block/stripped_warped_stem.png") + if wood_type == 2: # crimson_stem + top = self.load_image_texture("assets/minecraft/textures/block/crimson_stem_top.png") + side = self.load_image_texture("assets/minecraft/textures/block/crimson_stem.png") + if wood_type == 3: # crimson_stem + top = self.load_image_texture("assets/minecraft/textures/block/crimson_stem_top.png") + side = self.load_image_texture("assets/minecraft/textures/block/stripped_crimson_stem.png") + if blockid == 1009: # nether hyphae + if wood_type == 0: # warped_hyphae + top = self.load_image_texture("assets/minecraft/textures/block/warped_stem.png") + side = top + if wood_type == 1: # stripped_warped_hyphae + top = self.load_image_texture("assets/minecraft/textures/block/stripped_warped_stem.png") + side = top + if wood_type == 2: # crimson_hyphae + top = self.load_image_texture("assets/minecraft/textures/block/crimson_stem.png") + side = top + if wood_type == 3: # stripped_crimson_hyphae + top = self.load_image_texture("assets/minecraft/textures/block/stripped_crimson_stem.png") + side = top elif blockid == 11311: # stripped acacia/dark wood: if wood_type == 0: # acacia top = self.load_image_texture("assets/minecraft/textures/block/stripped_acacia_log.png") @@ -1688,6 +1715,15 @@ def flower(self, blockid, data): sprite(blockid=39, imagename="assets/minecraft/textures/block/brown_mushroom.png") # red mushroom sprite(blockid=40, imagename="assets/minecraft/textures/block/red_mushroom.png") +# warped fungus +sprite(blockid=1016, imagename="assets/minecraft/textures/block/warped_fungus.png") +# crimson fungus +sprite(blockid=1017, imagename="assets/minecraft/textures/block/crimson_fungus.png") +# warped roots +sprite(blockid=1018, imagename="assets/minecraft/textures/block/warped_roots.png") +# crimson roots +sprite(blockid=1019, imagename="assets/minecraft/textures/block/crimson_roots.png") + # block of gold block(blockid=41, top_image="assets/minecraft/textures/block/gold_block.png") # block of iron @@ -3666,6 +3702,8 @@ block(blockid=88, top_image="assets/minecraft/textures/block/soul_sand.png") # glowstone block(blockid=89, top_image="assets/minecraft/textures/block/glowstone.png") +# shroomlight +block(blockid=1011, top_image="assets/minecraft/textures/block/shroomlight.png") # portal @material(blockid=90, data=[1, 2, 4, 5, 8, 10], transparent=True) @@ -4225,6 +4263,12 @@ def stem(self, blockid, data): return img +# nether vines +billboard(blockid=1012, imagename="assets/minecraft/textures/block/twisting_vines.png") +billboard(blockid=1013, imagename="assets/minecraft/textures/block/twisting_vines_plant.png") +billboard(blockid=1014, imagename="assets/minecraft/textures/block/weeping_vines.png") +billboard(blockid=1015, imagename="assets/minecraft/textures/block/weeping_vines_plant.png") + # vines @material(blockid=106, data=list(range(32)), transparent=True, solid=False, nospawn=True) def vines(self, blockid, data): @@ -4234,6 +4278,7 @@ def vines(self, blockid, data): # 1 UNWSE # 2 UWSEN # 3 USENW + if self.rotation in [1, 2, 3]: bit_map = {1: [5, 3, 2, 1, 4], 2: [5, 2, 1, 4, 3], @@ -4359,6 +4404,9 @@ def fence_gate(self, blockid, data): # mycelium block(blockid=110, top_image="assets/minecraft/textures/block/mycelium_top.png", side_image="assets/minecraft/textures/block/mycelium_side.png") +# warped_nylium & crimson_nylium +block(blockid=1006, top_image="assets/minecraft/textures/block/warped_nylium.png", side_image="assets/minecraft/textures/block/warped_nylium_side.png") +block(blockid=1007, top_image="assets/minecraft/textures/block/crimson_nylium.png", side_image="assets/minecraft/textures/block/crimson_nylium_side.png") # lilypad # At the moment of writing this lilypads has no ancil data and their @@ -5151,6 +5199,8 @@ block(blockid=213, top_image="assets/minecraft/textures/block/magma.png") # nether wart block block(blockid=214, top_image="assets/minecraft/textures/block/nether_wart_block.png") +# warped wart block +block(blockid=1010, top_image="assets/minecraft/textures/block/warped_wart_block.png") # red nether brick block(blockid=215, top_image="assets/minecraft/textures/block/red_nether_bricks.png") diff --git a/overviewer_core/world.py b/overviewer_core/world.py index 52cf8c6..516e057 100644 --- a/overviewer_core/world.py +++ b/overviewer_core/world.py @@ -696,6 +696,29 @@ class RegionSet(object): 'minecraft:soul_campfire': (1003, 0), 'minecraft:blackstone': (1004, 0), 'minecraft:netherite_block': (1005, 0), + 'minecraft:warped_nylium': (1006, 0), + 'minecraft:crimson_nylium': (1007, 0), + # Nether logs aka stem + 'minecraft:warped_stem': (1008, 0), + 'minecraft:stripped_warped_stem': (1008, 1), + 'minecraft:crimson_stem': (1008, 2), + 'minecraft:stripped_crimson_stem': (1008, 3), + # hyphae + 'minecraft:warped_hyphae': (1009, 0), + 'minecraft:stripped_warped_hyphae': (1009, 1), + 'minecraft:crimson_hyphae': (1009, 2), + 'minecraft:stripped_crimson_hyphae': (1009, 3), + # nether biomes + 'minecraft:warped_wart_block': (1010, 0), + 'minecraft:shroomlight': (1011, 0), + 'minecraft:twisting_vines': (1012, 0), + 'minecraft:twisting_vines_plant': (1013, 0), + 'minecraft:weeping_vines': (1014, 0), + 'minecraft:weeping_vines_plant': (1015, 0), + 'minecraft:warped_fungus': (1016, 0), + 'minecraft:crimson_fungus': (1017, 0), + 'minecraft:warped_roots': (1018, 0), + 'minecraft:crimson_roots': (1019, 0), # New blocks 'minecraft:carved_pumpkin': (11300, 0), @@ -1027,7 +1050,8 @@ class RegionSet(object): (key == 'minecraft:piston_head' and p.get('type', 'normal') == 'sticky') or (key == 'minecraft:observer' and p.get('powered', 'false') == 'true')): data |= 0x08 - elif key.endswith('_log') or key.endswith('_wood') or key == 'minecraft:bone_block': + elif (key.endswith('_log') or key.endswith('_wood') or + key == 'minecraft:bone_block' or key.endswith('_stem')): axis = palette_entry['Properties']['axis'] if axis == 'x': data |= 4