From 2346c26f375ce9f4ed3ef871904c041092071a8b Mon Sep 17 00:00:00 2001 From: Nicolas Frattaroli Date: Sat, 2 Nov 2013 15:12:44 +0100 Subject: [PATCH] Added dark wood and acacia wood blocks Includes stairs, slabs, planks and saplings. --- overviewer_core/src/iterate.c | 2 ++ overviewer_core/src/primitives/lighting.c | 4 ++-- overviewer_core/textures.py | 20 ++++++++++++++++++-- 3 files changed, 22 insertions(+), 4 deletions(-) diff --git a/overviewer_core/src/iterate.c b/overviewer_core/src/iterate.c index 58668ac..bc92065 100644 --- a/overviewer_core/src/iterate.c +++ b/overviewer_core/src/iterate.c @@ -260,6 +260,8 @@ is_stairs(int block) { case 135: /* birch wood stairs */ case 136: /* jungle wood stairs */ case 156: /* quartz stairs */ + case 163: /* acacia wood stairs */ + case 164: /* dark wood stairs */ return 1; } return 0; diff --git a/overviewer_core/src/primitives/lighting.c b/overviewer_core/src/primitives/lighting.c index beffff9..c891249 100644 --- a/overviewer_core/src/primitives/lighting.c +++ b/overviewer_core/src/primitives/lighting.c @@ -160,7 +160,7 @@ get_lighting_color(RenderPrimitiveLighting *self, RenderState *state, /* special half-step handling, stairs handling */ /* Anvil also needs to be here, blockid 145 */ if (block == 44 || block == 53 || block == 67 || block == 108 || block == 109 || block == 114 || - block == 128 || block == 134 || block == 135 || block == 136 || block == 145 || block == 156) { + block == 128 || block == 134 || block == 135 || block == 136 || block == 145 || block == 156 || block == 163 || block == 164) { unsigned int upper_block; /* stairs and half-blocks take the skylevel from the upper block if it's transparent */ @@ -171,7 +171,7 @@ get_lighting_color(RenderPrimitiveLighting *self, RenderState *state, upper_block = get_data(state, BLOCKS, x, y + upper_counter, z); } while (upper_block == 44 || upper_block == 53 || upper_block == 67 || upper_block == 108 || upper_block == 109 || upper_block == 114 || upper_block == 128 || upper_block == 134 || - upper_block == 135 || upper_block == 136 || upper_block == 156 ); + upper_block == 135 || upper_block == 136 || upper_block == 156 || upper_block == 163 || upper_block == 164); if (is_transparent(upper_block)) { skylevel = get_data(state, SKYLIGHT, x, y + upper_counter, z); } else { diff --git a/overviewer_core/textures.py b/overviewer_core/textures.py index c9e7ca0..73d0c0c 100644 --- a/overviewer_core/textures.py +++ b/overviewer_core/textures.py @@ -880,7 +880,7 @@ def dirt_blocks(self, blockid, data): block(blockid=4, top_image="assets/minecraft/textures/blocks/cobblestone.png") # wooden planks -@material(blockid=5, data=range(4), solid=True) +@material(blockid=5, data=range(7), solid=True) def wooden_planks(self, blockid, data): if data == 0: # normal return self.build_block(self.load_image_texture("assets/minecraft/textures/blocks/planks_oak.png"), self.load_image_texture("assets/minecraft/textures/blocks/planks_oak.png")) @@ -890,6 +890,10 @@ def wooden_planks(self, blockid, data): return self.build_block(self.load_image_texture("assets/minecraft/textures/blocks/planks_birch.png"),self.load_image_texture("assets/minecraft/textures/blocks/planks_birch.png")) if data == 3: # jungle wood return self.build_block(self.load_image_texture("assets/minecraft/textures/blocks/planks_jungle.png"),self.load_image_texture("assets/minecraft/textures/blocks/planks_jungle.png")) + if data == 4: # acacia + return self.build_block(self.load_image_texture("assets/minecraft/textures/blocks/planks_acacia.png"),self.load_image_texture("assets/minecraft/textures/blocks/planks_acacia.png")) + if data == 5: # dark oak + return self.build_block(self.load_image_texture("assets/minecraft/textures/blocks/planks_big_oak.png"),self.load_image_texture("assets/minecraft/textures/blocks/planks_big_oak.png")) @material(blockid=6, data=range(16), transparent=True) def saplings(self, blockid, data): @@ -902,6 +906,10 @@ def saplings(self, blockid, data): tex = self.load_image_texture("assets/minecraft/textures/blocks/sapling_birch.png") elif data & 0x3 == 3: # jungle sapling tex = self.load_image_texture("assets/minecraft/textures/blocks/sapling_jungle.png") + elif data & 0x3 == 4: # acacia sapling + tex = self.load_image_texture("assets/minecraft/textures/blocks/sapling_acacia.png") + elif data & 0x3 == 5: # dark oak/roofed oak/big oak sapling + tex = self.load_image_texture("assets/minecraft/textures/blocks/sapling_roofed_oak.png") return self.build_sprite(tex) # bedrock @@ -1672,7 +1680,7 @@ def fire(self, blockid, data): block(blockid=52, top_image="assets/minecraft/textures/blocks/mob_spawner.png", transparent=True) # wooden, cobblestone, red brick, stone brick, netherbrick, sandstone, spruce, birch, jungle and quartz stairs. -@material(blockid=[53,67,108,109,114,128,134,135,136,156], data=range(128), transparent=True, solid=True, nospawn=True) +@material(blockid=[53,67,108,109,114,128,134,135,136,156,163,164], data=range(128), transparent=True, solid=True, nospawn=True) def stairs(self, blockid, data): # preserve the upside-down bit upside_down = data & 0x4 @@ -1705,6 +1713,10 @@ def stairs(self, blockid, data): texture = self.load_image_texture("assets/minecraft/textures/blocks/planks_jungle.png").copy() elif blockid == 156: # quartz block stairs texture = self.load_image_texture("assets/minecraft/textures/blocks/quartz_block_side.png").copy() + elif blockid == 163: # acacia wood stairs + texture = self.load_image_texture("assets/minecraft/textures/blocks/planks_acacia.png").copy() + elif blockid == 164: # dark oak stairs + texture = self.load_image_texture("assets/minecraft/textures/blocks/planks_big_oak.png").copy() outside_l = texture.copy() outside_r = texture.copy() @@ -3729,6 +3741,10 @@ def wooden_slabs(self, blockid, data): top = side = self.load_image_texture("assets/minecraft/textures/blocks/planks_birch.png") elif texture== 3: # jungle top = side = self.load_image_texture("assets/minecraft/textures/blocks/planks_jungle.png") + elif texture== 4: # acacia + top = side = self.load_image_texture("assets/minecraft/textures/blocks/planks_acacia.png") + elif texture== 5: # dark wood + top = side = self.load_image_texture("assets/minecraft/textures/blocks/planks_big_oak.png") else: return None